当前位置:   article > 正文

在sqlserver中创建表_sqlserver create table #

sqlserver create table #

1:在sql语句中,临时表有两类,分别是局部(local)和全局(global)临时表,局部临时表只在其会话(事务)中可见,全局临时表可以被会话(事务)中的任何程序或者

  模块访问


2:创建局部临时表

     

  1. use db_sqlserver
  2. go
  3. create table #db_local_table
  4. (
  5. id int,
  6. name varchar(50),
  7. age int,
  8. area int
  9. )
创建的临时表不能与其他会话共享,当会话结束时,行和表的定义都将被删除


3:创建全局临时表

  1. use db_sqlserver
  2. go
  3. create table ##db_local_table
  4. (
  5. id int,
  6. name varchar(50),
  7. age int,
  8. area int
  9. )

全局临时表对所有用户都是可见的,在每个访问该表的用户都断开服务器连接时,全局临时表才会被删除


4:创建主键、外键关联的数据库表
  1. use db_sqlserver;
  2. go
  3. create table db_table5
  4. (
  5. 职工编号 int primary key,
  6. 职工号 varchar(50) unique,
  7. 仓库号 varchar(50),
  8. 工资 int
  9. )
  10. go
  11. create table db_table6
  12. (
  13. 订单编号 int primary key,
  14. 订单号 varchar(50) unique,
  15. 职工号 varchar(50) references db_table5(职工号),
  16. 订购日期 datetime,
  17. 销售金额 int
  18. )


5:创建具有check约束字段的数据库表
  1. use db_sqlserver;
  2. go
  3. create table db_table7
  4. (
  5. 仓库编号 int primary key,
  6. 职工号 varchar(50) unique,
  7. 仓库号 varchar(50),
  8. 工资 int,
  9. 面积 int check(面积>=600 and 面积<=1800)
  10. )

6:创建含有计算字段的数据库表

  

  1. use db_sqlserver;
  2. go
  3. create table db_table8
  4. (
  5. 职工编号 int primary key,
  6. 职工号 varchar(50) unique,
  7. 仓库号 varchar(50),
  8. 基本工资 int check(基本工资>=800 and 基本工资<=2100),
  9. 加班工资 int,
  10. 奖金 int,
  11. 扣率 int,
  12. 应发工资 as (基本工资 + 加班工资 + 奖金 - 扣率)
  13. )

7:创建含有自动编号字段的数据库表

    

  1. use db_sqlserver;
  2. go
  3. create table db_table9
  4. (
  5. 仓库编号 int identity(1,1) primary key,
  6. 仓库号 varchar(50) unique,
  7. 城市 varchar(50) default('青岛'),
  8. 面积 int check(面积>=300 and 面积<=1800)
  9. )

向表中添加记录:

 insert into [db_sqlserver].[dbo].[db_table9](仓库号, 面积) values('400', 1600);
仓库编号会自动增加


8:创建含有排序字段的数据表

  1. create table db_table10
  2. (
  3. 仓库编号 int identity(1, 1) primary key,
  4. 仓库号 varchar(50) collate french_CI_AI not null,
  5. 城市 varchar(50) default '青岛',
  6. 面积 int check(面积>=300 and 面积<=1800)
  7. )

仓库号是一个排序字段,其中CI(case insensitive)表示不区分大小写,AI(accent insensitive)表示不区分重音,即创建的是一个不区分大小写

和不区分重音的排序。如果要区分大小和和区分排序,修改代码为:French_CS_AS


9:动态判断数据库表是否存在

  1. use db_sqlserver;
  2. go
  3. if(Exists(select * from sys.sysobjects where id=OBJECT_ID('db_table9')))
  4. print '数据库表名已经存在'
  5. else
  6. print '该数据库表名不存在,可以利用该名创建表'

10:查看表的各种信息,可以查看指定数据库表的属性、表中字段属性、各种约束等信息

 

  1. use db_sqlserver;
  2. go
  3. execute sp_help db_table9;


11:用select语句查看数据库表的属性信息

  1. use db_sqlserver;
  2. go
  3. select * from sysobjects where type='U'

12:重命名数据库表
  1. use db_sqlserver;
  2. go
  3. execute sp_rename "db_table9", "db_renametable"

13:增加数据库表的新字段
  
  1. use db_sqlserver;
  2. go
  3. alter table db_table1 add 电子邮件 varchar(50)
  4. alter table db_table1 add 联系方式 varchar(50) default '0532-88886396'
  5. select name 字段名, xusertype 类型编号, length 长度 from syscolumns where id = object_id('db_table1')





14:修改数据库表的字段
  1. use db_sqlserver;
  2. go
  3. alter table db_table1 alter column 电子邮件 varchar(200)
  4. select name 字段名, xusertype 类型编号, length 长度 from syscolumns where id = object_id('db_table1')



15:删除数据库表字段

  1. use db_sqlserver;
  2. go
  3. alter table db_table1 drop column 电子邮件
  4. select name 字段名, xusertype 类型编号, length 长度 from syscolumns where id = object_id('db_table1')




16:删除数据库表
 
  1. use db_sqlserver;
  2. go
  3. drop table db_table1
  4. drop table db_table1, db_table2

如果删除有依赖关联的数据库表,即主键、外键关键表、则要删除两个表之间的关联约束,然后才能删除表。注意,也可以先删除引用该表的数据库表,然后
即可删除该表,






 





声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/635366
推荐阅读
相关标签
  

闽ICP备14008679号