怎样在sql server不同的数据库之间复制表结构和数据

怎样在sql server不同的数据库之间复制表结构和数据,第1张

方式一、如果写代码

select

*

into

[目标数据库b].dbo.表名

from.

[源数据库a].dbo.表名

方式二、如果不写代码,可以用导入的方式

复制表结构(如果目标数据库已经存在,此步跳过)

1、打开并连接sql

server,在源数据库data_a(源数据库名称)上右键,然后依次点击“编写表脚本为”→“create到”→“新查询编辑器窗口”。

2、在第1步产生的编辑器中按”crtl+a“组合键全选内容,然后右键“复制“(或按"crtl+c"键)。

3、新建查询,然后右键“粘贴”(或ctrl+v);如图所示,将代码中data_a(源数据库名)改为data_b(目标数据库名)。接着右键单击”执行“执行代码。

4、在目标数据库的表结构中就可以看到被复制过来的表了。

表的数据内容复制

选中目标数据库data_b然后点击”任务“→”导入数据“。

进入”sql

server导入导出向导“,根据提示步骤 *** 作。

选择数据源(源数据库)。

选择目标(目标数据库)、指定表复制或查询。

选择源表和源视图:设置源表和目标表后,单击“编辑映射”按钮,在d出窗口中选中“启用标识插入”。(否则后面会出错)

一直点击“下一步”至最后完成 *** 作。

SqlConnection

myconn=new

SqlConnection("server=.datebase=masteruid=sapwd=xxx")

myconn,Open()

string

sql="select

1

from

master,dbo.sysdatabases

where

[name]='要检查的是否存在数据库名字'“

SqlCommand

cmd=new

SqlCommand(sql,mycnn)

if(cmd.ExecuteScalar()!=null)

{

MessageBox.Show("已存在该数据库")

}

上面是c#的写法,但是解决方案大致就是,创建master数据库的连接,执行

select

1

from

master,dbo.sysdatabases

where

[name]='要检查的是否存在数据库名字'

是否有返回值就是有了反之就没有

更简单的就是全盘收索(或者你知道范围的去限定搜索范围)

要检查的是否存在数据库名字.mdf

这个文件吧有就是有的话一般就是有这个数据库了,不过也存在没有附加的可能,但是没有这个文件就说明绝对是没有这个数据库的

方式一、如果写代码

select * into [目标数据库B].DBO.表名 from. [源数据库A].DBO.表名

方式二、如果不写代码,可以用导入的方式

复制表结构(如果目标数据库已经存在,此步跳过)

1、打开并连接Sql Server,在源数据库DATA_A(源数据库名称)上右键,然后依次点击“编写表脚本为”→“CREATE到”→“新查询编辑器窗口”。

2、在第1步产生的编辑器中按”crtl+a“组合键全选内容,然后右键“复制“(或按"crtl+c"键)。

3、新建查询,然后右键“粘贴”(或ctrl+v);如图所示,将代码中DATA_A(源数据库名)改为DATA_B(目标数据库名)。接着右键单击”执行“执行代码。

4、在目标数据库的表结构中就可以看到被复制过来的表了。

表的数据内容复制

选中目标数据库DATA_B然后点击”任务“→”导入数据“。

进入”SQL Server导入导出向导“,根据提示步骤 *** 作。

选择数据源(源数据库)。

选择目标(目标数据库)、指定表复制或查询。

选择源表和源视图:设置源表和目标表后,单击“编辑映射”按钮,在d出窗口中选中“启用标识插入”。(否则后面会出错)

一直点击“下一步”至最后完成 *** 作。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/6806686.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-28
下一篇2023-03-28

发表评论

登录后才能评论

评论列表(0条)

    保存