如何从SQL Server导出数据?

时间:2009-11-24 02:07:33

标签: sql sql-server export

我需要将数据库从SQL Server 2005导出到SQL脚本(就像我们在MySQL中可以轻松完成的那样)。所以我想用这样的脚本生成生成的文件

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

任何人都可以解释我该如何逐步完成这项工作?

6 个答案:

答案 0 :(得分: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

祝你好运,希望这对你有所帮助。

答案 1 :(得分:0)

如果你需要整个数据库,包括模式,对象和数据,我发现最简单的方法是创建一个完整备份,然后在其他地方恢复它。 SQL Server Management Studio包含许多用于生成备份的不同选项,包括用于包括用户和脚本对象级别权限等的选项.MSDN上提供了来自SQL Server Management Studi的creating a backuprestoring from a backup的详细说明

如果您只想编写插入语句脚本以将数据复制到其他位置,那么我已成功使用此stored procedure。该脚本顶部的注释中有详细说明(向下滚动注释到示例)。基本上,一旦执行了一次存储过程,就可以使用如下命令调用proc:

EXEC sp_generate_inserts 'tableName'

答案 2 :(得分: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获得。只需在页面中稍微下来就可以找到

希望这有帮助

答案 3 :(得分:0)

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

EG。 RedGate或SQLDumper

或者你可以自己写。

答案 4 :(得分:0)

我前一段时间通过编写脚本(VBScript)来解决这个问题。处理大多数数据类型,包括blob。

获取from my site

HTH。

答案 5 :(得分:0)

SQL 2005中不存在此功能。但是,它是在SQL 2008中添加的,因此一种解决方案是升级。如果符合您的要求,您可以使用免费的SQL Express或低成本的SQL Developer。

否则,您需要编写程序来执行此操作,或使用第三方解决方案。