使用產生和發佈指令碼精靈
您可以使用產生和發佈指令碼精靈,建立指令碼在不同的 Database Engine 執行個體之間傳輸資料庫。您可以針對區域網路上 Database Engine 執行個體的資料庫產生指令碼,或是從 SQL Azure 產生指令碼。產生的指令碼可以在另一個 Database Engine 或 SQL Azure 執行個體上執行。您也可以使用此精靈,將資料庫內容直接發行到使用資料庫發行服務所建立的 Web 服務。
您可以針對整個資料庫建立指令碼,或將它限制為特定物件。
[!附註]
發行資料庫精靈的功能已經加入至產生和發佈指令碼精靈。發行資料庫精靈已停止使用。
支援的 SQL Server 版本
來源資料庫必須位於 SQL Server 2005、SQL Server 2008、SQL Server 2008 R2 或 SQL Azure 的執行個體上。目標資料庫必須位於 SQL Server 2000、SQL Server 2005、SQL Server 2008、SQL Server 2008 R2 或 SQL Azure 的執行個體上。
權限
發行資料庫的最低權限是來源資料庫上 db_ddladmin 固定資料庫角色中的成員資格。將資料庫指令碼發行至位於主控提供者之 SQL Server 執行個體的最低權限是目標資料庫上 db_ddladmin 固定資料庫角色中的成員資格。
此外,使用者也必須提供使用者名稱和密碼來存取主控提供者帳戶,以便使用此精靈發行。您必須先在主控提供者處建立目標資料庫,然後再發行來源資料庫。發行會覆寫現有資料庫中的物件。
發行至主控的服務
除了建立指令碼以外,產生和發佈指令碼精靈也可用來將資料庫發行至特定類型的主控 SQL Server Web 服務。SQL Server Hosting Toolkit 會提供資料庫發行服務當做 CodePlex 上的共用原始檔專案。Web 主控提供者可以使用資料庫發行服務專案來建置一組 Web 服務,讓他們的客戶輕鬆地將資料庫部署到 Web 服務。如需有關下載 SQL Server Hosting Toolkit 的詳細資訊,請參閱 SQL Server 資料庫發行服務 (英文)。
啟動產生和發佈指令碼精靈
若要啟動此精靈並產生指令碼,請參閱<如何:產生指令碼 (SQL Server Management Studio)>。
若要啟動此精靈,並發行到主控的 SQL Server Web 服務,請參閱<如何:發行資料庫 (SQL Server Management Studio)>。
發行的物件
下表將列出可發行的物件,以及產生和發佈指令碼精靈支援這些物件的 SQL Server 版本。
資料庫物件 |
SQL Server 2008 R2 |
SQL Server 2008 |
SQL Server 2005 |
SQL Server 2000 |
---|---|---|---|---|
應用程式角色 |
是 |
是 |
是 |
是 |
組件 |
是 |
是 |
是 |
否 |
CHECK 條件約束 |
是 |
是 |
是 |
是 |
CLR (Common Language Runtime) 預存程序1 |
是 |
是 |
是 |
否 |
CLR 使用者定義函數 |
是 |
是 |
是 |
否 |
資料庫角色 |
是 |
是 |
是 |
是 |
DEFAULT 條件約束 |
是 |
是 |
是 |
是 |
全文檢索目錄 |
是 |
是 |
是 |
是 |
索引 |
是 |
是 |
是 |
是 |
規則 |
是 |
是 |
是 |
是 |
結構描述 |
是 |
是 |
是 |
否 |
預存程序1 |
是 |
是 |
是 |
是 |
同義字 |
是 |
是 |
是 |
是 |
資料表 |
是 |
是 |
是 |
是 |
使用者2 |
是 |
是 |
是 |
是 |
使用者定義彙總 |
是 |
是 |
是 |
否 |
使用者定義資料類型 |
是 |
是 |
是 |
是 |
使用者定義函數 |
是 |
是 |
是 |
是 |
使用者定義資料表 |
是 |
是 |
否 |
否 |
使用者定義型別 |
是 |
是 |
是 |
否 |
檢視表1 |
是 |
是 |
是 |
是 |
XML 結構描述集合 |
是 |
是 |
是 |
否 |
1 在未經加密的情況下發行。
2 存在資料庫中的任何非系統使用者都將以「角色」的方式發行。