首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

使用 osql 工具管理 SQL Server 2000 桌面引擎 (MSDE 2000) 完整指南

     編輯:關於SqlServer

什麼是 osql?

命令列工具,透過 ODBC 連線執行 T-SQL 陳述式/腳本檔。MSDE 無圖形介面,osql 為唯一內建管理工具。執行檔位於 MSSQL\Binn\osql.exe。

基本用法

互動模式

osql -E          -- Windows 驗證連線本地預設實例
osql -E -S .\InstanceName  -- 具名實例
1> SELECT @@VERSION
2> GO
1> QUIT

單一陳述式

osql -E -Q "SELECT name FROM sysdatabases"   -- 執行後離開
osql -E -q "SELECT name FROM sysdatabases"   -- 執行後留在提示字元

執行腳本檔

osql -E -i C:\Scripts\create_db.sql -o C:\Logs\output.txt -n  -- -n 移除行號/提示符

常見管理任務速查

任務T-SQL 範例
建立 Windows 登入EXEC sp_grantlogin 'DOMAIN\User'
建立 SQL 登入EXEC sp_addlogin 'usr', 'pwd'
授予資料庫存取EXEC sp_grantdbaccess 'DOMAIN\User', 'UserAlias'
修改密碼EXEC sp_password 'old', 'new', 'login'
建立資料庫CREATE DATABASE TestDB
完整備份BACKUP DATABASE MyDB TO DISK = 'C:\Backup\MyDB.bak'
記錄備份BACKUP LOG MyDB TO DISK = 'C:\Backup\MyDB_log.bak'
還原資料庫RESTORE DATABASE MyDB FROM DISK = 'C:\Backup\MyDB.bak'
分離資料庫EXEC sp_detach_db 'MyDB'
附加資料庫EXEC sp_attach_db @dbname='MyDB', @filename1='C:\Data\MyDB.mdf', @filename2='C:\Data\MyDB.ldf'

連線參數速查

  • -E:Windows 整合驗證(信任連線)
  • -U/-P:SQL 驗證帳號/密碼
  • -S server\instance:指定伺服器/具名實例
  • -d dbname:預設資料庫
  • -i input_file:輸入腳本
  • -o output_file:輸出結果
  • -n:移除編號/提示符
  • -w width:輸出寬度(預設 80)
  • -h headers:每 N 列顯示一次標題

注意事項

  • MSDE 2000 內建 SQL Server Agent,可排程備份作業(參考 KB 241397)。
  • SQL Server 2005+ 已以 sqlcmd 取代 osql,語法相似但支援更多功能(變數、XML 輸出等)。
  • 所有範例需以 sysadmin 或對應固定伺服器/資料庫角色執行。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved