【问题标题】:Copy certain data (not all) from one DB to another DB将某些数据(不是全部)从一个数据库复制到另一个数据库
【发布时间】:2017-03-08 08:58:07
【问题描述】:

所以,我知道我们可以使用Tasks--> Generate Scripts 生成脚本以将一个数据库复制到另一个数据库,但是如果我不想要所有数据怎么办?比如说,我有一个查询,它显示了我想要从源获取的唯一数据 - 我如何将数据和表从源复制到目标?

我需要限制数据,因为源表很大。

我的数据库是:SQL Server 2008(源和目标)。请帮忙!

【问题讨论】:

标签: sql sql-server sql-server-2008 stored-procedures


【解决方案1】:

您可以半手动创建传输。考虑到两个数据库都在同一台服务器上,您可以使用以下方式创建存储过程:

// Create heap table based on existing table
SELECT * INTO newdb.dbo.mytablecopy FROM olddb.dbo.myoriginaltable WHERE 1=2;

// Good idea to create some kind of id here and make it clustered index...
ALTER TABLE newdb.dbo.mytablecopy 
  ADD COLUMN id INT IDEINTITY(1,1) NOT NULL, 
  ADD CONSTRAINT pk_id PRIMARY KEY CLUSTERED (id);

// Then actually transfer data
INSERT INTO newdb.dbo.mytablecopy(...provide list of columns...)
SELECT * FROM olddb.dbo.myoriginaltable WHERE ...provide your selection criteria...

【讨论】:

    猜你喜欢
    • 2017-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-28
    • 1970-01-01
    • 2012-10-30
    相关资源
    最近更新 更多