我已經使用SMO對象爲SQL Server的數據庫對象生成SQL腳本。當數據庫位於本地網絡中時,此功能很好。但是,如果數據庫位於遠程服務器中,則需要很長時間。當數據庫位於遠程服務器中時,爲SQL Server對象生成腳本的最佳和最快方式是什麼?生成用於SQL Server數據庫的所有對象的腳本
1
A
回答
0
你可以試着預先緩存所需的對象,以提高性能與PrefetchObjects方法:
var server = new Server(new ServerConnection(connectionString));
var database = server.Databases[databaseName];
database.PrefetchObjects(typeof(Table));
如果你想實現與數據庫架構遷移的話,退房Wizardby。
2
我會使用SQL Server Management Studio
從數據庫項目右鍵單擊並選擇任務,生成腳本。那裏有很多選擇供你享用。
(你甚至可以把它的腳本數據表中)。
+0
我必須使用c#以編程方式執行此操作。 – 2010-01-25 06:32:40
相關問題
- 1. 生成我的數據庫的數據的SQL腳本(SQL SERVER)
- 2. 程序生成的所有對象腳本在數據庫
- 3. 創建有效的SQL腳本以生成SQL Server數據庫
- 4. 爲所有數據庫上的所有對象生成模式腳本
- 5. 如何在Toad for MySQL中生成所有數據庫對象的腳本
- 6. 將所有的SQL數據庫對象腳本到VS數據庫項目
- 7. 數據庫對象腳本的順序?
- 8. SQL Server Management Studio 2008 - 任務生成腳本 - 缺少數據庫
- 9. SQL Server生成腳本
- 10. 腳本數據庫中的所有對象到表
- 11. 爲數據庫中的所有表/列生成DDL/DML腳本
- 12. 生成數據庫中所有索引的腳本
- 13. 用於刪除SQL Server 2008中所有非系統對象的腳本
- 14. 解析SQL Server數據庫的腳本
- 15. 查找對SQL Server數據庫中的對象的所有引用
- 16. SQL Server - 使用RESTORE複製數據庫,生成的副本沒有數據
- 17. 生成滴創建密鑰的SQL腳本,在SQL Server數據庫
- 18. 如何生成腳本以刪除所有SQL Server數據庫上的角色成員?
- 19. 快速生成基於sql 2008數據庫的ascii文本sql腳本
- 20. SQL Server 2008生成數據腳本並檢查現有記錄
- 21. 在SQL Server給對象名稱自動生成腳本
- 22. SQL Server:如何創建數據庫中所有數據的腳本
- 23. 腳本對於SQL Server 2005
- 24. 由PowerDesigner生成的sql server腳本
- 25. sql server數據庫對象類型獲取所有約束
- 26. 生成腳本嚮導掛起沒有腳本的所有對象
- 27. 用於獲取SQL對象上的所有SQL依賴關係的SQL腳本
- 28. SQL Server CE:使用腳本生成DB
- 29. 在沒有數據的情況下生成現有數據庫的創建腳本 - SQL Server 2008
- 30. 使用生成腳本從sql server 2012導出日期數據
我嘗試這樣做: Server服務器=新服務器(CON); var database = server.Databases [vstrDatabase]; database.PrefetchObjects(typeof(Table)); foreach(table tbl in database.Tables) { sbr = new StringBuilder(); StringCollection script = tbl.Script(); 的foreach(在腳本字符串str) { } } tbl.Script花費大量的時間用於遠程服務器,所以整個過程花費很長的時間。我需要爲所有對象創建腳本。那麼最好的方法是什麼? – 2010-01-22 11:14:57
對PrefetchObjects狀態的幫助_通過使一個網絡與SQL Server實例相連,可以使集合充分填充對象._ - 您是否曾使用Profiler觀看過這種**一次往返?瘋! – springy76 2011-09-14 10:55:58
@ springy76這是怎麼回事? – 2011-09-14 11:08:09