数据库更新Sqlserver脚本总结

2022-05-24 0 586

表复制:

1. INSERT INTO SELECT语句

 语句形式为:Insert into Table2(field1,field2,…) select value1,value2,… from Table1

 要求目标表Table2必须存在,由于目标表Table2已经存在,所以我们除了插入源表Table1的字段外,还可以插入常量。

 示例如下:


复制代码 代码如下:

–创建测试表

create TABLE Users1

(

UserID int identity (1,1) primary key not null,

UserName varchar(10),

UserAddress varchar(20)

)

GO

create TABLE Users2

(

ID int identity (1,1) primary key not null,

Name varchar(10),

Address varchar(20)

)

GO

–创建测试数据

Insert into Users1 values(‘赵’,’asds’)

Insert into Users1 values(‘钱’,’asds’)

Insert into Users1 values(‘孙’,’asds’)

Insert into Users1 values(‘李’,’asds’)

GO

select * from Users2

–INSERT INTO SELECT语句复制表数据

Insert into Users2(Name,Address) select UserName,UserAddress from Users1

GO

–显示更新后的结果

select * from Users2

GO

–删除测试表

drop TABLE Users1

drop TABLE Users2

2. SELECT INTO FROM语句

语句形式为:SELECT vale1, value2 into Table2 from Table1

要求目标表Table2不存在,因为在插入时会自动创建表Table2,并将Table1中指定字段数据复制到Table2

示例如下:


复制代码 代码如下:

–创建测试表

create TABLE Users1

(

UserID int identity (1,1) primary key not null,

UserName varchar(10),

UserAddress varchar(20)

)

GO

–创建测试数据

Insert into Users1 values(‘赵’,’asds’)

Insert into Users1 values(‘钱’,’asds’)

Insert into Users1 values(‘孙’,’asds’)

Insert into Users1 values(‘李’,’asds’)

GO

–SELECT INTO FROM语句创建表Users2并复制数据

select UserName,UserAddress INTO Users2 from Users1

GO

–显示更新前后的结果

select * from Users1

select * from Users2

GO

–删除测试表

drop TABLE Users1

drop TABLE Users2

表更改:

3.ALTER TABLE 语句

 ALTER TABLE 语句用于在已有的表中添加、修改或删除列。

 语句形式为:


复制代码 代码如下:

在表中添加列 :

ALTER TABLE table_name

ADD column_name datatype

删除表中的列

ALTER TABLE table_name

DROP COLUMN column_name

改变表中列的数据类型

ALTER TABLE table_name

ALTER COLUMN column_name datatype

示例如下:


复制代码 代码如下:

–创建测试表

create TABLE Users

(

UserID int identity (1,1) primary key not null,

UserName varchar(10),

UserAddress varchar(20)

)

GO

–在Users表中添加一个名为 “Birthday” 的新列 数据类型为datetime

ALTER TABLE Users ADD Birthday datetime

GO

–在Users表中把 “Birthday” 列的数据类型改为nvarchar(20)

ALTER TABLE Users ALTER COLUMN Birthday nvarchar(20)

GO

–删除 “Person” 表中的 “Birthday” 列:

ALTER TABLE Users DROP COLUMN Birthday

GO

–删除测试表

drop TABLE Users

使用Sp_rename 存储过程[SQLCE不支持]

 Sp_rename 存储过程可以修改当前数据库中用户对象的名称,如表、列、索引、存储过程等待。但在SqlCe下面测试只能改表名

 语法如下:

 Sp_rename[@objname=]’object_name’,

  [@newname=]’new_name’

  [,[@objtype=]’object_type’]

 其中[@objtype=]’object_type’是要改名的对象的类型,其值可以为

  ’Column’ 列

  ’Database’ 数据库

  ’Index’ 索引

  ’Userdatatype’用户自定义类型

  ’Object’ 对象

 值’Object’指代了系统表sysobjects中所有对象,如表、视图、存储过程、触发器、规则、约束等。’object’值为默认值。

 示例如下:


复制代码 代码如下:

例1:更改orders表的列p_id 名称为 products_id

exec sp_rename ‘orders.[p_id]’,’product_id’,’column’

例2: 更改orders表的名称为p_orders

exec sp_rename ‘orders’,’p_orders’

免责声明:
1、本网站所有发布的源码、软件和资料均为收集各大资源网站整理而来;仅限用于学习和研究目的,您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。 不得使用于非法商业用途,不得违反国家法律。否则后果自负!

2、本站信息来自网络,版权争议与本站无关。一切关于该资源商业行为与www.niceym.com无关。
如果您喜欢该程序,请支持正版源码、软件,购买注册,得到更好的正版服务。
如有侵犯你版权的,请邮件与我们联系处理(邮箱:skknet@qq.com),本站将立即改正。

NICE源码网 MsSql 数据库更新Sqlserver脚本总结 https://www.niceym.com/60265.html