关于SQL Server 2005:SQL Server 2005-以编程方式导出表(运行.sql文件以重建表)

SQL Server 2005 - Export table programmatically (run a .sql file to rebuild it)

我有一个带有表的数据库客户有一些数据
我办公室中还有另一个数据库,所有数据库都是一样的,但是我的表Customers是空的
我如何在SQL Server 2005(T-SQL)中创建一个sql文件,该文件将表中的所有内容从第一个数据库客户那里获取,创建一个,例如buildcustomers.sql,我将该文件压缩,然后将其复制到网络,在我的SQL Server中执行,瞧!我的桌子上的顾客已满

如何为整个数据库做同样的事情?


此功能已内置在Sql Server Management Studio 2008中。

只需下载试用版,然后仅安装客户端工具(该工具不应过期)。使用Management Studio 2008连接到2005数据库(向后兼容)。

  • 右键单击您的数据库
  • 选择"任务>生成脚本"。
  • 按下一步,再次选择您的数据库
  • 在"选择脚本选项"屏幕上,有一个名为"脚本数据"的选项,它将为您的所有数据生成SQL插入语句。
  • (注意:对于SQL Server Management Studio 2008 R2,该选项称为"脚本的数据类型",是"常规"部分中的最后一个。选项为"仅数据","模式"和数据",以及"仅模式")

    alt

    1
    2
    3
    4
    bcp"SELECT * FROM CustomerTable" queryout"c:\\temp\\CustomerTable.bcp"
         -N -S SOURCESERVERNAME -T

    bcp TargetDatabaseTable IN"c:\\temp\\CustomerTable.bcp" -N -S TARGETSERVERNAME -T
    • -N使用本机类型
    • -T使用受信任的连接
    • -S服务器名

    非常快速,容易地嵌入代码中。 (我已经围绕此命令构建了数据库备份(还原)系统。


    您可以查看下面的文章,以了解如何同时使用SQL Server本机工具和第三方工具来执行此操作:SQL Server批量复制以及批量导入和导出技术

    免责声明:我是ApexSQL的支持工程师

    希望这会有所帮助


    您始终可以将数据从"客户"表中导出到Excel文件中,并将该数据导入到"客户"表中。

    要导入/导出数据:

  • 右键单击数据库
  • 转到任务
  • 转到导入数据或导出数据
  • 将数据源更改为Microsoft Excel
  • 跟随向导

  • 我只想为Sql Server Management Studio 2008添加一些屏幕快照。使用前面描述的步骤是正确的。当您拥有\\'Generate and Publish Script \\'-> \\'Set Script Options \\'时,请按Advance以查看脚本选项:

    ![在哪里可以找到高级脚本选项]:图像丢失,因为我的信誉不高:(

    对于Sql Server Management Studio 2008,包含数据的选项为\\'脚本的数据类型\\'

    ![要编写脚本的数据类型]:缺少图像,因为我的信誉不高:(


    对于Data Expoer,作为SQL Server 2005中的SQL脚本,

    http://blog.sqlauthority.com/2007/11/16/sql-server-2005-generate-script-with-data-from-database-database-publishing-wizard/


    如果两个数据库都驻留在SQL Server的同一实例中,即使用相同的连接,则此SQL可能会有所帮助:

    1
    2
    3
    INSERT INTO [DestinationDB].[schema].[TABLE] ([COLUMN])
    SELECT [COLUMN] FROM [OriginDB].[schema].[TABLE]
    GO


    推荐阅读