SQL语句创建、修改、删除表

创建全局临时表
create table ##ry
(
  a int
)
创建局部临时表
create table #ry
(
  a int
)


创建表
create table custom
(
num varchar(20) not null primary key,
cusname varchar(10) not null,
age tinyint not null,
sex  bit not null,
cardname varchar(10) not null,
cardnum varchar(20) not null,
mobile varchar(11) not null,
tel varchar(11) not null,
email varchar(20) not null
)

修改列 adress 为 varchar(30) 
alter table custom
alter column adress varchar(30) not null

更改表名        
exec sp_rename  custom,newname

修改表中的列名 
exec sp_rename 'dbo.custom.cardnum', 'newcardnum','column'

删除一列        
alter table custom
drop column adress

删除表          
drop table custom

创建表时为表加约束
create table vip
(
vipid varchar(6) not null primary key,(主键约束)
vipname varchar(10) not null,
vtime datetime not null, default getdate(), (default 约束)
point int not null,
viptype varchar(10) not null,
num varchar(20) foreign key references custom(num) (外键约束)
)

创建表buytic
create table buytic
(
num varchar(20) not null,
btime datetime not null,
money1 money not null
)

为已经创建的表加约束
alter table buytic
add constraint pk_num  primary key(num)
add constraint fk_num  foreign key(num) references custom(num)
on update no action
on delete cascade
(默认的级联动作是,子表中如果有父表的ID引用,则父表的记录不能删除。
现在改成如果父表中删除该记录,子表与该 记录关联的记录全部删除。)


为已创建的表添加default约束
alter table vip
sdd constraint df_vtime default getdate() for vtime
 

为已创建的表添加唯一约束
alter table custom
add constraint uq_cardnum
unique(cardnum)


为已创建的表添加check约束
alter table buytic
add constraint ck_btime
check (btime<=getdate())


Check约束
限制列为合适的数字   Between 1 and 2
合适的SSN格式           Like ‘’
限制一个字段为特定列表   IN(‘UPS’,’Fed Ex’,’USPS’)
价格必须为正           UnitPrice>=0
在同一行中引用另外一个列  ShipDate>=OrderDate

 

创建计算列的表
create table sells
(
price money not null,
count int,
sums as price*int
)

创建函数列的表
create table  table1
(
time1 as getdate(),
id int,
username as user_name()
)

 

你可能感兴趣的:(数据库,职场,sql语句,休闲)