今天的这篇文章记录一次需要把一个表的数据变成InsetSQL语句,然后执行到另一个环境的相同表的一个过程
这里我用的是自己的本地服务器(买的服务器过期了,也没续了…)
话不多说了,上手!!!
这里我新建了一个数据库,以后一般的文章表都建这了
然后就是添加数据库表了(建两个,一个有数据的表1,一个无数据表2,需要的就是获取到表一的全部数据的insert语句,再执行到表2,也可以执行到任何相同表的环境下)
上代码
------------创建表
--表1
if NOT exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[CopySQLTableData]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
BEGIN
CREATE TABLE [dbo].[CopySQLTableData](
[ID] [int] IDENTITY(1,1) NOT NULL, --主键ID
[Name] [nvarchar](50) NULL, --姓名
[Sex] [bit] NULL,--性别
[Age] [int] NULL,--年龄
[CreationTime] [datetime] NULL,--创建时间
[Remark][nvarchar](MAX) NULL --备注
)
END
GO
--表2
if NOT exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[CopySQLTableData2]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
BEGIN
CREATE TABLE [dbo].[CopySQLTableData2](
[ID] [int] IDENTITY(1,1) NOT NULL, --主键ID
[Name] [nvarchar](50) NULL, --姓名
[Sex] [bit] NULL,--性别
[Age] [int] NULL,--年龄
[CreationTime] [datetime] NULL,--创建时间
[Remark][nvarchar](MAX) NULL --备注
)
END
GO
--查询
select *from [dbo].[CopySQLTableData]
select *from [dbo].[CopySQLTableData2]
给表1(CopySQLTableData)添加数据(模拟需求环境)
insert CopySQLTableData values
('张三',0,18,GETDATE(),'表CopySQLTableData的张三'),
('李四',0,19,GETDATE(),'表CopySQLTableData的李四'),
('王五',0,20,GETDATE(),'表CopySQLTableData的王五')
GO
到此为止测试环境以及搭建完毕
接下来就是真正的正文了
1、首先,我们选择数据库(注意是数据库,不是表)然后右键–任务–生成脚本
2、点击生成脚本后会出现这个界面,我们直接下一步即可
3、接着就是这里,他会默认勾选第一个,我们需要勾选第二个,然后选择我们需要的表,继续下一步
4、接着就到这了,我们修改下默认配置(我是放到桌面,然后不覆盖),如图,我们的重点还是【高级】按钮,我们需要进去修改关键东西
5、然后我们来到这,一路下滑到底,我们可以看到一个【要编写脚本的数据的类型】,下边可以选择【架构和数据】、【仅限架构】、【仅限数据】
所以选择1 or 3 都可以得到insert语句,架构那只是数据库结构,得到的是创建数据库的SQL
6、继续下一步
7、点击完成
8、至此,insert SQL语句已经在我桌面生成了,我们来看一下内容
(为了看全部效果,我选择了【架构和数据】)
9、测试效果
(1)因为是在同一个数据库内的两个表,而不是不同数据库的相同表,这里我们要改表名
(2)执行,不知道是不是时间的缘故,导致报错,添加不进
,发现是insert的表错了,没改,,,,
(3)OK,这下没问题了,对时间有需要的话,可以把时间改为GETDAE获取,(感觉也难全部改,数据多的话,还不如Update了)
(4)结果:ojbk,没毛病了
安排了小半小时,这篇文章也算安排明白了,舒畅~~
好了,我是【一个人三座城】,新步入职场的菜鸟程序员,期待你的**点赞、评论、收藏、关注**