使用 isql 工具(SQL Server 2000/2005 附帶,後續版本建議改用 sqlcmd)透過系統預存程序 sp_defaultdb 修改登入帳號的預設資料庫。
isql /U "sa" /P "sa_password" /d "master" /Q "exec sp_defaultdb N'sa', N'master'"
/U:登入帳號/P:密碼/d:連線資料庫(此處指定 master 確保能執行系統程序)/Q:執行完指令後立即離開isql /E /d "master" /Q "exec sp_defaultdb N'BUILTIN\Administrators', N'master'"
/E:使用信任連線(目前 Windows 帳號)BUILTIN\Administrators 為本機管理員群組,實際帳號請依環境調整isql 已停止更新,sqlcmd 為官方推薦替代品,支援 Unicode、參數化、更佳的輸出格式:
-- SQL 驗證
sqlcmd -S . -U sa -P "sa_password" -d master -Q "EXEC sp_defaultdb N'sa', N'master'"
-- Windows 驗證
sqlcmd -S . -E -d master -Q "EXEC sp_defaultdb N'BUILTIN\Administrators', N'master'"
若已有 SSMS / Azure Data Studio 連線,直接執行:
USE master;
GO
EXEC sp_defaultdb @loginame = 'sa', @defdb = 'master';
GO
sysadmin 固定伺服器角色成員。