如何使用SQL Server语句创建表


Posted in SQL Server onApril 12, 2022

前言

SQL Server创建表是最常见也是最常用的操作之一,下面就为您介绍SQL Server创建表的语句写法,供您参考,希望可以让您对SQL Server创建表方面有更深的认识。

方法如下:

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

2:创建局部临时表

use db_sqlserver
go
create table #db_local_table
(
  id  int,
  name varchar(50),
  age int,
  area int
)

创建的临时表不能与其他会话共享,当会话结束时,行和表的定义都将被删除

3:创建全局临时表

use db_sqlserver
go
create table ##db_local_table
(
  id  int,
  name varchar(50),
  age int,
  area int
)

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

4:创建主键、外键关联的数据库表

use db_sqlserver;
go
create table db_table5
(
  职工编号 int primary key,
  职工号  varchar(50) unique,
  仓库号  varchar(50),
  工资   int
)
 
go
create table db_table6
(
  订单编号 int primary key,
  订单号  varchar(50) unique,
  职工号 varchar(50) references db_table5(职工号),
  订购日期 datetime,
  销售金额 int
)

5:创建具有check约束字段的数据库表

use db_sqlserver;
go
create table db_table7
(
  仓库编号 int primary key,
  职工号  varchar(50) unique,
  仓库号  varchar(50),
  工资   int,
  面积  int check(面积>=600 and 面积<=1800)
)

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

use db_sqlserver;
go
create table db_table8
(
  职工编号 int primary key,
  职工号 varchar(50) unique,
  仓库号 varchar(50),
  基本工资 int check(基本工资>=800 and 基本工资<=2100),
  加班工资 int,
  奖金 int,
  扣率 int,
  应发工资 as (基本工资 + 加班工资 + 奖金 - 扣率)
)

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

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

向表中添加记录:

insert into [db_sqlserver].[dbo].[db_table9](仓库号, 面积) values('400', 1600);

仓库编号会自动增加

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

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

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

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

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

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

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

use db_sqlserver;
go
execute sp_help db_table9;

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

use db_sqlserver;
go
select * from sysobjects where type='U'

12:重命名数据库表

use db_sqlserver;
go
execute sp_rename "db_table9", "db_renametable"

13:增加数据库表的新字段 

use db_sqlserver;
go
alter table db_table1 add 电子邮件 varchar(50)
alter table db_table1 add 联系方式 varchar(50) default '0532-88886396'
 
select name 字段名, xusertype 类型编号, length 长度 from syscolumns where id = object_id('db_table1')

如何使用SQL Server语句创建表

14:修改数据库表的字段

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

如何使用SQL Server语句创建表

15:删除数据库表字段

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

如何使用SQL Server语句创建表

16:删除数据库表

use db_sqlserver;
go
drop table db_table1
drop table db_table1, db_table2

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

总结

到此这篇关于在sqlserver中创建表的文章就介绍到这了!

SQL Server 相关文章推荐
SQLServer2019 数据库的基本使用之图形化界面操作的实现
Apr 08 SQL Server
SQLServer2008提示评估期已过解决方案
Apr 12 SQL Server
SQL 窗口函数实现高效分页查询的案例分析
May 21 SQL Server
SQL 尚未定义空闲 CPU 条件 - OnIdle 作业计划将不起任何作用
Jun 30 SQL Server
SQL Server代理:理解SQL代理错误日志处理方法
Jun 30 SQL Server
SQL语句中JOIN的用法场景分析
Jul 25 SQL Server
SQL Server查询某个字段在哪些表中存在
Mar 03 SQL Server
SQL Server中常用截取字符串函数介绍
Mar 16 SQL Server
SQL Server远程连接的设置步骤(图文)
Mar 23 SQL Server
使用 MybatisPlus 连接 SqlServer 数据库解决 OFFSET 分页问题
Apr 22 SQL Server
SQL Server中搜索特定的对象
May 25 SQL Server
SQL Server数据库备份和恢复数据库的全过程
Jun 14 SQL Server
MSSQL基本语法操作
Apr 11 #SQL Server
SQL Server数据库查询出现阻塞之性能调优
Apr 10 #SQL Server
sql server偶发出现死锁的解决方法
SQL Server的存储过程与触发器以及系统函数和自定义函数
Apr 10 #SQL Server
SQL Server表分区降低运维和维护成本
SQL Server使用导出向导功能
SQL Server内存机制浅探
You might like
PHP的构造方法,析构方法和this关键字详细介绍
2013/10/22 PHP
PHP实现的登录页面信息提示功能示例
2017/07/24 PHP
PHP实现的杨辉三角求解算法分析
2019/03/11 PHP
JQury slideToggle闪烁问题及解决办法
2011/07/05 Javascript
jQuery中live方法的重复绑定说明
2011/10/21 Javascript
JS实现表单中checkbox对勾选中增加边框显示效果
2015/08/21 Javascript
jQuery实现滚动条滚动到子元素位置(方便定位)
2017/01/08 Javascript
原生JS检测CSS3动画是否结束的方法详解
2019/01/27 Javascript
原来JS还可以这样拆箱转换详解
2019/02/01 Javascript
20个必会的JavaScript面试题(小结)
2019/07/02 Javascript
webpack4 配置 ssr 环境遇到“document is not defined”
2019/10/24 Javascript
nodejs环境使用Typeorm连接查询Oracle数据
2019/12/05 NodeJs
Vue 修改网站图标的方法
2020/12/31 Vue.js
Python内置数据结构与操作符的练习题集锦
2016/07/01 Python
python 开发的三种运行模式详细介绍
2017/01/18 Python
Python 实现链表实例代码
2017/04/07 Python
全面分析Python的优点和缺点
2018/02/07 Python
人脸识别经典算法一 特征脸方法(Eigenface)
2018/03/13 Python
浅谈python中np.array的shape( ,)与( ,1)的区别
2018/06/04 Python
python 字典 按key值大小 倒序取值的实例
2018/07/06 Python
Python学习笔记之For循环用法详解
2019/08/14 Python
python实现逆滤波与维纳滤波示例
2020/02/26 Python
利用django创建一个简易的博客网站的示例
2020/09/29 Python
python中翻译功能translate模块实现方法
2020/12/17 Python
python如何调用php文件中的函数详解
2020/12/29 Python
工程造价与财务管理专业应届生求职信
2013/10/06 职场文书
九年级化学教学反思
2014/01/28 职场文书
职工趣味运动会方案
2014/02/10 职场文书
2014入党积极分子批评与自我批评思想报告
2014/10/06 职场文书
小学语文教师年度考核个人总结
2015/02/05 职场文书
酒店总经理岗位职责
2015/04/01 职场文书
2016秋季运动会开幕词
2016/03/04 职场文书
创业计划书之奶茶店开店方案范本!
2019/08/06 职场文书
导游词之桂林山水
2019/09/20 职场文书
利用前端HTML+CSS+JS开发简单的TODOLIST功能(记事本)
2021/04/13 Javascript
python实现监听键盘
2021/04/26 Python