概要
“SQL Server 桌面引擎”(也叫 MSDE 2000)沒有自己的用戶界面,因為它主要設計為在後台運行。用戶通過 MSDE 2000 嵌入的程序與它交互。 MSDE 2000 提供的唯一工具是 Osql 。可執行文件 Sql.exe 在 MSDE 2000 的默認實例的 MSSQL/Binn 文件夾中。
本文重點討論如何通過使用 Osql 工具管理 MSDE 2000。
何為 Osql?
Osql 工具是一個 Microsoft Windows 32 命令提示符工具,您可以使用它運行 Transact-SQL 語句和腳本文件。Osql 工具使用 ODBC 數據庫應用程序編程接口 (API) 與服務器通訊。
如何使用 Osql?
一般情況下,可以這樣使用 osql 工具:
•用戶通過與使用命令提示符時相似的方式交互輸入 Transact-SQL 語句。
•用戶提交 osql 作業,方法是:
1. 指定單個要運行的 Transact-SQL 語句。
2.將該工具指向一個包含要運行的 Transact-SQL 語句的腳本文件。
交互式輸入 Transact-SQL 語句
如要顯示 osql 工具的區分大小寫的選項列表,請在命令提示符下鍵入如下內容,然後按 ENTER 鍵:
osql -?
如想了解關於 osql 工具的每一選項的更多信息,請參見“SQL Server 聯機圖書”中的“osql Utility”主題。
如要交互輸入 Transact-SQL 語句,請按照下列步驟操作:
1.確認 MSDE 2000 正在運行。
2.連接到 MSDE 2000(有關更多信息,請參見標題為“連接到 SQL Server 桌面引擎 (MSDE 2000)”的部分)。在 osql 命令提示符下,鍵入 Transact-SQL 語句,然後按 ENTER 鍵。 當您在輸入的每一行後按 ENTER 鍵時,osql 將緩存該命令行上的語句。如要運行當前緩存的語句,請鍵入“Go”,接著按 ENTER 鍵。
3.如要運行一批 Transact-SQL 語句,請分別在單獨的行上輸入每一個 Transact-SQL 命令。然後,在最後一行上鍵入“Go”以表示批處理命令的結束並運行當前緩存的語句。運行結果出現在控制台窗口。
4.當您在輸入的每一行後按 ENTER 鍵時,如想從 osql 退出,請鍵入 QUIT 或 EXIT,並按 ENTER 鍵。
提交 Osql 作業
一般情況下,您可以用兩種方法之一提交 osql 作業。
1.指定單個 Transact-SQL 語句。
2.將該工具指向一個腳本文件。
指定單個 Transact-SQL 語句
如要針對 MSDE 2000 的本地默認實例運行 Transact-SQL,請鍵入與下面這一個類似的命令:
osql -E -q "Transact-SQL statement"
-E 表示使用 Microsoft Windows NT 身份驗證。
-q 表示運行 Transact-SQL 語句,但是在查詢結束時不退出 osql。
如要運行 Transact-SQL 語句並退出 osql,請使用 -Q 參數來代替 -q。
將該工具指向一個腳本文件
如要將該工具指向一個腳本文件,請按照下列步驟操作:
1.創建一個包含一批 Transact-SQL 語句的腳本文件(如 myQueries.sql)。
打開命令提示符,鍵入與下面類似的一個命令,然後按 ENTER 鍵:
osql -E -i input_file
其中
input_file 是腳本文件及其完整路徑。例如,如果腳本文件 myQueries.sql 在 C:/Queries 文件夾中,請將參數 input_file 替換為 C:/Queries/myQueries.sql。
2.該腳本文件的運行結果將出現在控制台窗口中。如果您想將運行結果定向到一個文件,請向上述命令中添加 -o output_file 參數。例如:
osql -E -i input_file -o output_file
其中
output_file 是輸出文件及其完整路徑。
如想消除輸出結果中的編號和提示符號,請向上述命令中添加 -n 選項。例如:
osql -E -i input_file -o output_file -n
連接到 SQL Server 桌面引擎 (MSDE 2000)
如要連接到 MSDE 2000,請按照下列步驟操作:
1.確認 MSDE 2000 正在運行。
2.在承載您要連接的 MSDE 2000 實例的計算機上打開一個命令窗口。
3.鍵入下面的命令,然後按 ENTER 鍵:
osql -E
這可以通過使用 Windows 身份驗證將您連接到 MSDE 2000 的本地默認實例。
如要連接到 MSDE 2000 的一個命名實例,請鍵入:
osql -E -S servername/instancename
如果您收到了下面的錯誤消息,表明 MSDE 2000 可能未在運行,或者您可能為安裝的 MSDE 2000 的命名實例提供了錯誤的名稱:
[Shared Memory]SQL Server does not exist or access denied.
[Shared Memory]ConnectionOpen (Connect()).
如果您成功連接到了該服務器,就會出現下面的提示:
1>
此提示表示 osql 已啟動。現在,您可以交互輸入 Transact-SQL 語句,運行結果將出現在命令提示行上。
管理 MSDE 2000
MSDE 完全適用於所有版本的 Microsoft SQL Server 2000,可以通過企業管理器來管理。