数据库更新Sqlserver脚本总结

表复制:

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’

(0)
上一篇 2022年3月21日
下一篇 2022年3月21日

相关推荐