将数据库对象编写脚本到文件的存储过程?

时间:2010-03-10 23:57:01

标签: sql sql-server sql-server-2005

我想在SQL 2005中编写一个存储过程,将所有数据库对象编写为文件。唯一的问题是......我不知道该怎么做。有人可以帮忙吗?

谢谢!

3 个答案:

答案 0 :(得分:2)

你可以尝试这样的事情,

首先在SQL服务器中创建一个新的存储过程,如下所示。

CREATE PROCEDURE ListObjectsToFile
AS
BEGIN
 select * from sysobjects;
END
GO

然后从命令行调用它,指示完整的连接字符串和输出文件的路径/名称

  

C:\> sqlcmd -S   yourServer \ yourSQLServerInstance -U yourUser -P yourUserPassword -q   ListObjectsToFile -o C:\ list.txt

希望有所帮助,

桑蒂! :)

答案 1 :(得分:2)

我知道您的问题表明您希望存储过程完成工作,但如果您想要其他解决方案,我将在VB.NET中使用SMO。使用.NET对象访问数据库对象时,它们都有一个“Script()”函数,该函数返回用于重新创建对象的SQL。 A table for instance

希望这可能会有所帮助

答案 2 :(得分:0)

尝试DBSourceTools。 (http://dbsourcetools.codeplex.com
它的开源,专门用于编写整个数据库的脚本
- 表,视图,过程和数据到磁盘,然后通过部署目标重新创建该数据库。