轉(zhuǎn)自msdn
![]() | 概要 | ||||
![]() | 何為 Osql? | ||||
![]() | 如何使用 Osql? | ||||
![]() | 交互式輸入 Transact-SQL 語(yǔ)句 | ||||
![]() | 提交 Osql 作業(yè) | ||||
![]() | 連接到 SQL Server 桌面引擎 (MSDE 2000) | ||||
![]() | 管理 MSDE 2000 | ||||
![]() | 新建登錄帳戶 | ||||
![]() | 訪問數(shù)據(jù)庫(kù) | ||||
![]() | 如何更改登錄密碼 | ||||
![]() | 創(chuàng)建數(shù)據(jù)庫(kù) | ||||
![]() | 備份和還原數(shù)據(jù)庫(kù) | ||||
![]() | 附加和分離數(shù)據(jù)庫(kù) | ||||
![]() | 參考 | ||||
![]() | 這篇文章中的信息適用于: |
![]() | 回到頂端 |
![]() | 回到頂端 |
• | 用戶通過與使用命令提示符時(shí)相似的方式交互輸入 Transact-SQL 語(yǔ)句。 | ||||
• | 用戶提交 osql 作業(yè),方法是:
|
1. | 確認(rèn) MSDE 2000 正在運(yùn)行。 | ||||
2. | 連接到 MSDE 2000(有關(guān)更多信息,請(qǐng)參見標(biāo)題為“連接到 SQL Server 桌面引擎 (MSDE 2000)”的部分)。 | ||||
3. | 在 osql 命令提示符下,鍵入 Transact-SQL 語(yǔ)句,然后按 ENTER 鍵。 當(dāng)您在輸入的每一行后按 ENTER 鍵時(shí),osql 將緩存該命令行上的語(yǔ)句。
運(yùn)行結(jié)果出現(xiàn)在控制臺(tái)窗口。 | ||||
4. | 當(dāng)您在輸入的每一行后按 ENTER 鍵時(shí),如想從 osql 退出,請(qǐng)鍵入 QUIT 或 EXIT,并按 ENTER 鍵。 |
• | 指定單個(gè) Transact-SQL 語(yǔ)句。 - 或 - |
• | 將該工具指向一個(gè)腳本文件。 |
• | -E 表示使用 Microsoft Windows NT 身份驗(yàn)證。 -而- |
• | -q 表示運(yùn)行 Transact-SQL 語(yǔ)句,但是在查詢結(jié)束時(shí)不退出 osql。 |
1. | 創(chuàng)建一個(gè)包含一批 Transact-SQL 語(yǔ)句的腳本文件(如 myQueries.sql)。 |
2. | 打開命令提示符,鍵入與下面類似的一個(gè)命令,然后按 ENTER 鍵: osql -E -i input_file 其中 input_file 是腳本文件及其完整路徑。例如,如果腳本文件 myQueries.sql 在 C:\Queries 文件夾中,請(qǐng)將參數(shù) input_file 替換為 C:\Queries\myQueries.sql。 該腳本文件的運(yùn)行結(jié)果將出現(xiàn)在控制臺(tái)窗口中。如果您想將運(yùn)行結(jié)果定向到一個(gè)文件,請(qǐng)向上述命令中添加 -ooutput_file 參數(shù)。例如: osql -E -i input_file -o output_file 其中 output_file 是輸出文件及其完整路徑。 如想消除輸出結(jié)果中的編號(hào)和提示符號(hào),請(qǐng)向上述命令中添加 -n 選項(xiàng)。例如: osql -E -i input_file -o output_file -n |
![]() | 回到頂端 |
1. | 確認(rèn) MSDE 2000 正在運(yùn)行。 |
2. | 在承載您要連接的 MSDE 2000 實(shí)例的計(jì)算機(jī)上打開一個(gè)命令窗口。 |
3. | 鍵入下面的命令,然后按 ENTER 鍵: osql -E 這可以通過使用 Windows 身份驗(yàn)證將您連接到 MSDE 2000 的本地默認(rèn)實(shí)例。 如要連接到 MSDE 2000 的一個(gè)命名實(shí)例,請(qǐng)鍵入: osql -E -S servername\instancename 如果您收到了下面的錯(cuò)誤消息,表明 MSDE 2000 可能未在運(yùn)行,或者您可能為安裝的 MSDE 2000 的命名實(shí)例提供了錯(cuò)誤的名稱: [Shared Memory]SQL Server does not exist or access denied. 如果您成功連接到了該服務(wù)器,就會(huì)出現(xiàn)下面的提示:[Shared Memory]ConnectionOpen (Connect()). 1>此提示表示 osql 已啟動(dòng)。現(xiàn)在,您可以交互輸入 Transact-SQL 語(yǔ)句,運(yùn)行結(jié)果將出現(xiàn)在命令提示行上。 |
![]() | 回到頂端 |
EXEC sp_grantlogin 'Corporate\Test'
只有 sysadmin 或 securityadmin 固定服務(wù)器角色的成員可以運(yùn)行 sp_grantlogin 存儲(chǔ)過程。有關(guān)這些角色的更多信息,請(qǐng)參見“SQL Server 聯(lián)機(jī)圖書”中“Roles, SQL Server Architecture”主題。EXEC sp_addlogin 'test','hello'
只有 sysadmin 和 securityadmin 固定服務(wù)器角色的成員可以運(yùn)行 sp_addlogin 存儲(chǔ)過程。有關(guān) sp_addlogin 存儲(chǔ)過程的更多信息,請(qǐng)參見“SQL Server 聯(lián)機(jī)圖書”中的“sp_addlogin, Transact-SQL Reference”主題。EXEC sp_grantdbaccess 'Corporate\BobJ', 'Bob'
EXEC sp_password 'ok', 'hello','test'
CREATE DATABASE Test
CREATE DATABASE 權(quán)限默認(rèn)授予 sysadmin 和 dbcreator 固定服務(wù)器角色的成員。有關(guān)“CREATE DATABASE”命令的更多信息,請(qǐng)參見“SQL Server 聯(lián)機(jī)圖書”中的“CREATE DATABASE, Transact-SQL Reference”主題。 • | 存儲(chǔ)媒體故障。 |
• | 用戶錯(cuò)誤。 |
• | 服務(wù)器的永久丟失。 |
BACKUP DATABASE mydb TO DISK = 'C:\MSDE\Backup\mydb.bak'
BACKUP LOG mydb TO DISK = 'C:\MSDE\Backup\mydb_log.bak'
RESTORE DATABASE mydb FROM DISK ='C:\MSDE\Backup\mydb.bak'
如果將要還原的數(shù)據(jù)庫(kù)不存在,則用戶必須具有 CREATE DATABASE 權(quán)限才可以運(yùn)行 RESTORE 語(yǔ)句。如果該數(shù)據(jù)庫(kù)存在,則 RESTORE 權(quán)限默認(rèn)授予 sysadmin 和 dbcreator 固定服務(wù)器角色的成員,以及該數(shù)據(jù)庫(kù)的所有者 (dbo)。有關(guān) RESTORE 語(yǔ)句的更多信息,請(qǐng)參見“SQL Server 聯(lián)機(jī)圖書”中的“RESTORE, Transact-SQL Reference”主題。 EXEC sp_detach_db 'mydb'
只有 sysadmin 固定服務(wù)器角色的成員才可以運(yùn)行 sp_detach_db 存儲(chǔ)過程。有關(guān) sp_detach_db 存儲(chǔ)過程的更多信息,請(qǐng)參見“SQL Server 聯(lián)機(jī)圖書”中的“sp_detach_db, Transact-SQL Reference”主題。 EXEC sp_attach_db @dbname = N'mydb',
@filename1 = N'C:\MSDE\Backup\mydb.mdf',
@filename2 = N'C:\MSDE\Backup\mydb.ldf'
大寫字母“N”用來(lái)給“Unicode 字符串”常量添加前綴。“N”前綴代表 SQL-92 標(biāo)準(zhǔn)中的區(qū)域語(yǔ)言。有關(guān)詳細(xì)信息,請(qǐng)參見 Microsoft 知識(shí)庫(kù)中的以下文章: 聯(lián)系客服