2009-11-24 158 views
5

我需要將數據庫從SQL Server 2005導出到SQL腳本(就像我們可以在MySQL中輕鬆完成的那樣)。所以,我想獲得生成的文件,像這樣如何從SQL Server導出數據?

INSERT INTO ... [row 1] 
INSERT INTO ... [row 2] 
INSERT INTO ... [row 3] 
... 

腳本任何人都可以解釋我是如何能做到這一步一步的?

回答

6

實際上,從MSSQL 2005數據庫導出數據的一種簡單方法是使用SQL Server Database Publishing Toolkit,這在Scott Guthrie的博客中有詳細描述。

此外,SQL數據庫發佈工具包是從已經內置到SQL 2005的工具派生而來的。文章Create Script to Copy Database Schema and All The Objects – Stored Procedure, Functions, Triggers, Tables, Views, Constraints and All Other Database Objects將引導您完成構建數據庫的項目的不同步驟。

從SQL 2005工具派生出來的另一個工具是Database Publishing Wizard,它是一個命令行工具,用於編寫數據庫的所有項目。

最終讀取鏈接告訴如何Use the Database Publishing Wizard to script your table data

祝你好運,希望這可以幫助你。

+0

確實很好用,但需要單獨安裝,需要Visual Studio或Visual Web Developer。其實我需要從我開發的某個組織獲取數據庫。由於某些原因,安裝新軟件相當困難。所以我更喜歡一些與MS SQL Server 2005一起使用的工具或者不需要安裝的工具。 – levanovd 2009-11-24 02:24:21

+0

除了我的prev commnent: 我忘了SQL Management Studio工具也可用,因爲它們已安裝。 – levanovd 2009-11-24 02:32:11

+0

要添加到Management Studio工具和命令行工具的其他鏈接。 – Chris 2009-11-24 04:07:24

0

如果你需要採取一個完整的數據庫,包括模式,對象和數據,我發現最簡單的方法是創建一個完整的備份,然後在其他地方恢復。 SQL Server Management Studio包含許多不同的選項來生成備份,包括用於包含用戶的選項和腳本對象級權限等。SQL Server Management Studi中的creating a backuprestoring from a backup的詳細說明可在MSDN上找到。

如果你只是想腳本插入語句將數據複製到其他地方,我已成功使用此stored procedure。腳本頂部的註釋中有詳細的說明(向下滾動到註釋示例)。基本上,一旦你一次執行存儲過程,你可以使用如下命令調用PROC:

EXEC sp_generate_inserts 'tableName' 
0

試試這個

SELECT 'EXEC sp_generate_inserts ' + 
'[' + name + ']' + 
',@owner = ' + 
'[' + RTRIM(USER_NAME(uid)) + '],' + 
'@ommit_images = 1, @disable_constraints = 1' 
FROM sysobjects 
WHERE type = 'U' AND 
OBJECTPROPERTY(id,'ismsshipped') = 0 

My code library獲得。剛去了一下倒在頁面上,你會發現

希望這有助於

0

SQL Server Management Studio中沒有此功能。你需要一些第三方工具。

例如, RedGate或SQLDumper

或者你可以自己寫。

0

我前一段時間寫了一個腳本(VBScript)來處理這個問題。處理大多數數據類型,包括斑點。

得到它from my site

HTH。

0

該功能在SQL 2005中不存在。但是,它是在SQL 2008中添加的,因此一種解決方案是升級。如果他們滿足您的要求,您可以使用免費的SQL Express或低成本的SQL Developer。

否則,您需要編寫一個程序來執行此操作,或使用第三方解決方案。

相關問題