SQL Server修改表结构

在SQL Server中修改的关键字是 ALTER(改变;(使)更改;修改(衣服使更合身);改动)

列操作

添加列

添加列操作

sql 复制代码
alter tabel 表名 add 列名 数据类型
sql 复制代码
--给员工表添加一个邮箱 alter的翻译是(改变)
alter table people add PeopleMail varchar(200);

运行成功后,在people表中可以看到多了一个名为PeopleMail的列

删除列

sql 复制代码
alter table 表名 drop column 列名
sql 复制代码
--删除刚刚添加的邮箱列
alter table People drop column PeopleMail

修改列的数据类型

sql 复制代码
alter table 表名 alter column 列名 数据类型
sql 复制代码
--修改PeopleAddress的varchar的长度由300变为200
--修改表People 修改列PeopleAddress
alter table people alter column PeopleAddress varchar(200)

修改后

修改列名

sql 复制代码
alter table 表名 rename column 列名 to 新的列名
sql 复制代码
alter table people rename column PeopleMail to QQemil

提示有语法错误 不知道为啥,有知道的好伙计可以在评论中告诉大家

约束操作

删除约束

sql 复制代码
alter table 表名 drop constraint 约束名

如果之前添加列的时候设置了约束名,就使用之前设置的

如果没有可以通过以下操作找到想修改字段的约束名

右键表--点击设计

然后会出来这样的界面
在空白处右键点击 check约束 检查约束

这里就是约束名称
(到这里好像手动直接删除也没差)

sql 复制代码
alter table people drop constraint CK__people__PeopleSa__4316F928

添加(表达式)约束

sql 复制代码
alter table 表名 add constraint 约束名称 check(表达式)
sql 复制代码
--添加约束 刚刚将薪水的那条约束删除了,这里将其添加起来
alter table people add constraint CK__people__PeopleSa1 check(PeopleSalary >=1000 and PeopleSalary <=10000000);

添加完成之后,在刚刚的页面check其约束也可以看到表达式和名称

添加(主键)约束

sql 复制代码
alter table 表名 add constraint 约束名 primary key(列名)

添加(唯一)约束

sql 复制代码
alter table 表名 add constraint 约束名 unique(列名)

添加(默认值)约束

sql 复制代码
alter table 表名 add constraint 约束名 default 默认值 for(列名)

添加(外键)约束

sql 复制代码
alter table 表名 add constraint 约束名 foreign key(列名) references 关联表名(列名(主键))
相关推荐
满昕欢喜18 小时前
回顾与总结
数据库·sqlserver
wenha2 天前
数据库隔离级别
数据库·mysql·sqlserver·隔离级别
~小先生~2 天前
sqlserver 外键、级联使用
数据库·sqlserver
Mr_pyx3 天前
Java 注解(Annotation)详解:从基础到 APT 实战
java·数据库·sqlserver
弱水三千 只取一瓢饮6 天前
sqlserver 从数据库A的备份文件,还原到数据库B中
数据库·sqlserver
百锦再6 天前
时序数据库选型指南:大数据时代的“数据基建”与 IoTDB 的工业原生之路
大数据·数据库·mysql·oracle·sqlserver·时序数据库·iotdb
UpYoung!7 天前
【数据库工具】DBeaver——轻量化多功能数据库连接工具DBeaver Ultimate 24.0.0版详细下载安装指南
数据库·mysql·sqlserver·数据库开发·数据库管理·dbeaver·数据库工具
代码雕刻家7 天前
MySQL与SQL Server的基本指令
数据库·mysql·sqlserver
xuefuhe7 天前
SQL Server Registered Server
sqlserver
二月十六8 天前
SQL Server 2022 新特性:Ledger 账本表详解(防篡改审计利器)
数据库·sqlserver·防篡改