Readme_Assembly Cleanup 範例
[本主題是發行前的文件集,在未來的版本中可能有所變更。空白的主題則以預留位置表示。請注意:為了提供您更多繁體中文的內容,Microsoft 以非傳統翻譯方式 (例如機器翻譯) 提供當地語系化的文件。針對此發行前版本,本文件中的部分內容就是以非傳統方式翻譯。Microsoft 了解非傳統方式翻譯的文件很難盡善盡美,此類文件或許會有詞彙、結構、文法方面的錯誤。本內容的正式版將會以傳統翻譯方式翻譯,提供與舊版本相等的譯文品質。]
此範例僅適用於 SQL Server 2005 和 SQL Server 2008,不適用於 SQL Server 2005 之前的任何 SQL Server 版本。
AssemblyCleanup 範例包含以 Visual C# 撰寫的 .NET 預存程序,該預存程序會查詢中繼資料目錄,在目前的資料庫中清除未使用的組件。
其唯一的參數 visible_assemblies 用於指定是否應該卸除未使用的可見組件。'false' 這個值表示預設只會卸除未使用的不可見組件,否則,將會卸除所有未使用的組件。
未使用組件的集合就是尚未定義任何進入點 (常式/類型和彙總),而且沒有已使用的組件直接或間接參考它們的組件。
注意
編譯 SQLCLR 範例時,使用 SQL Server 散發之 Microsoft .NET Framework 編譯器的版本路徑必須為 PATH 環境變數中的第一個 Framework 目錄。包含在 SQL Server 中之編譯器的位置是 <drive>:\WINNT\Microsoft.NET\Framework\v2.0.<xxxxx> 或 <drive>:\Windows\Microsoft.NET\Framework\v2.0.<xxxxx>,其中,<drive> 為安裝磁碟,<xxxxx> 為包含在 SQL Server 中之 .NET Framework 的版本號碼。
預設的安裝目錄為 C:\Program Files\Microsoft SQL Server\100\Samples\Engine\Programmability\CLR\AssemblyCleanup。
您必須先下載並安裝 SQL Server 範例和範例資料庫,才可以檢視或使用它們。如需詳細資訊,請參閱<安裝 SQL Server 範例和範例資料庫的考量>。
狀況
開發人員要在 SQL Server 與伺服器上的檔案系統之間複製影像。
語言
Transact-SQL、Visual C# 及 Visual Basic。
必要條件
執行此範例之前,請確定已安裝下列軟體:
- SQL Server
建立範例
如果您尚未建立強式名稱金鑰檔 ExternalSampleKey.snk,請利用下列指示產生金鑰檔。
若要產生強式名稱金鑰檔
開啟 Microsoft Visual Studio 2005 命令提示字元。按一下 [開始],依序指向 [所有程式]、[Microsoft Visual Studio 2005] 和 [Visual Studio 工具],然後按一下 [Visual Studio 2005 命令提示字元]。
- 或 -
開啟 Microsoft .NET Framework 命令提示字元。按一下 [開始],依序指向 [所有程式] 和 [Microsoft .NET Framework SDK 2.0],然後按一下 [SDK 命令提示字元]。
在命令提示字元中,使用變更目錄 (CD) 命令,將 [命令提示字元] 視窗的目前資料夾變更為 Samples 資料夾。
注意
若要判斷範例所在的資料夾,請按一下 [開始],並依序指向 [所有程式]、[Microsoft SQL Server] 和 [文件集和教學課程],然後按一下 [範例目錄]。如果是使用預設安裝位置,則範例位於 <system_drive>:\Program Files\Microsoft SQL Server\100\Samples。
在命令提示字元中,執行下列其中一個命令來產生金鑰檔:
sn -k ExternalSampleKey.snk
注意
如需有關強式名稱金鑰組的詳細資訊,請參閱 MSDN 中 .NET Development Center 中的<Security Briefs: Strong Names and Security in the .NET Framework>。
若要建立範例,請執行下列動作:
建立範例
編譯範例的方法為,使用提供的 Microsoft Visual Studio 方案,或在命令提示字元使用類似下列的命令:
Sn -k keypair.snk
Csc /reference:"C:\Program Files\Microsoft SQL Server\MSSQL.10.MSSQLSERVER\MSSQL\Binn\sqlaccess.dll" /target:library /debug /out:CS\AssemblyCleanup\Bin\Debug\AssemblyCleanup.dll CS\AssemblyCleanup\*.cs
請確定已安裝 AdventureWorks 資料庫,或者,建立您要在其中安裝範例的資料庫。
將 Scripts\installCS.sql 或 Scripts\installVB.sql 中的 Transact-SQL 指令碼載入到 Management Studio 並執行它。此檔案包含在 SQL Server 中安裝和註冊範例 CLR 物件的指令碼。
執行範例
若要執行範例,請執行下列動作:
執行範例
若要將 Scripts\test.sql 中的 Transact-SQL 指令碼載入 Management Studio 並執行它。此指令碼會顯示使用範例的典型方式。
完成範例時,將 Scripts\cleanup.sql 中的 Transact-SQL 指令碼載入 Management Studio 並執行它。此指令碼會移除範例。
移除範例
若要移除範例,請執行下列動作:
移除範例
在 Management Studio 開啟 scripts\cleanup.sql 檔案,並執行該檔案所包含的指令碼。或者,在命令提示字元中執行下列命令:
sqlcmd -E -I -i Scripts\cleanup.sql
註解
必須啟用 SQL Server 或 SQL Server Express 的 CLR,才能讓此範例正常運作。
範例只供教育目的之用。它們不能用於實際執行環境,而且尚未在實際執行環境中測試過。Microsoft不提供對這些範例的技術支援。若沒有系統管理員的權限,就不應該在生產 SQL Server 資料庫或報表伺服器上,連接或使用範例應用程式及組件。
請參閱
概念
其他資源
Large Binary Object (LOB) Handling using ADO.Net
Common Language Runtime (CLR) 整合程式設計概念