一文教会你在sqlserver中创建表

作者:波哥的技术积累 时间:2024-01-17 11:42:57 

前言

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')

一文教会你在sqlserver中创建表

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')

一文教会你在sqlserver中创建表

15:删除数据库表字段

use db_sqlserver;
go
alter table db_table1 drop column 电子邮件

select name 字段名, xusertype 类型编号, length 长度 from syscolumns where id = object_id('db_table1')

一文教会你在sqlserver中创建表

16:删除数据库表

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

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

来源:https://bogeit.blog.csdn.net/article/details/7333893

标签:sqlserver,创建,表
0
投稿

猜你喜欢

  • Oracle 数据库启动过程的三阶段、停库四种模式详解

    2024-01-16 04:05:25
  • Golang中实现数据脱敏处理的go-mask包分享

    2024-02-12 17:24:55
  • Python中return self的用法详解

    2022-06-08 08:43:32
  • Python自动化办公之PPT段落的使用

    2023-07-10 07:09:24
  • 解决python spyder 突然打不开的问题

    2022-07-07 19:43:06
  • Python将内容进行base64编码与解码实现

    2021-02-19 17:47:42
  • Python数据可视化库seaborn的使用总结

    2022-08-07 11:43:04
  • 用Python编写一个简单的CS架构后门的方法

    2021-08-07 00:15:58
  • Python爬虫通过替换http request header来欺骗浏览器实现登录功能

    2021-04-05 21:55:26
  • python数据类型bytes 和 bytearray的使用与区别

    2021-08-26 05:51:48
  • js仿百度音乐全选操作

    2024-04-18 10:03:41
  • 详解PyTorch预定义数据集类datasets.ImageFolder使用方法

    2022-01-30 20:15:07
  • 如何使用Pycharm连接SQL Sever(详细教程)

    2024-01-18 22:57:41
  • Opera下的max-width BUG

    2010-06-26 12:51:00
  • Python随机生成一个6位的验证码代码分享

    2021-03-16 10:41:54
  • jquery实现标签上移、下移、置顶

    2024-04-19 10:17:30
  • 一个提高了近10%转化率的改进

    2009-05-22 12:40:00
  • Python Tkinter实现简易计算器功能

    2023-08-08 09:53:30
  • ASP连接Access数据库和SQL server数据库的方法

    2007-08-22 13:16:00
  • IE下文本被折行的解决方案

    2009-06-28 16:13:00
  • asp之家 网络编程 m.aspxhome.com