SQL Server 如何添加删除外键、主键,以及更新自增属性
1.添加删除主键和外键
例如:
-----删除主键约束
DECLARE @NAME SYSNAME
DECLARE @TB_NAME SYSNAME
SET @TB_NAME = 'Date'
SELECT TOP 1 @NAME=NAME FROM SYS.OBJECTS WITH(NOLOCK)
WHERE TYPE_DESC ='PRIMARY_KEY_CONSTRAINT' AND PARENT_OBJECT_ID = (
SELECT OBJECT_ID
FROM SYS.OBJECTS WITH(NOLOCK)
WHERE NAME = @TB_NAME )
SELECT @NAME as PK
DECLARE @ALTERSQL NVARCHAR(MAX)
SET @ALTERSQL=N'ALTER TABLE '+@TB_NAME+'
DROP CONSTRAINT '+@NAME+''
EXEC SP_EXECUTESQL @ALTERSQL
----添加主键约束
alter table Date add constraint PK_Date primary key(ID)
----设置外键约束的SQL语句:
alter table student add constraint FK_student_classes foreign key(cla_id) references classes(ID)
----删除外键约束
alter table student drop constraint FK_student_classes
2.自增属性的更新
------如果仅仅是指定值插入,可用以下语句,临时取消
SET IDENTITY_INSERT classes ON
INSERT INTO classes (ID,Name) VALUES(7,'测试1')
SET IDENTITY_INSERT [classes] OFF
-----新增一列,删除自增列,修改列名
alter table classes add ID_Temp int
update a set ID_Temp=ID
alter table classes drop column ID
exec sp_rename 'ID_Temp', 'ID', 'column'
--------通过修改系统关于该表的列属性,该方法使用不当将可能引起其它不可预料的错误(未操作成功)
sp_configure 'allow update',1
reconfigure with override
go
update syscolumns set colstat=0 where colstat=1 and id=object_id('tablename')
go
sp_configure 'allow update',0
reconfigure with override
转载于:https://www.cnblogs.com/CIreland/p/6011969.html
SQL Server 如何添加删除外键、主键,以及更新自增属性相关推荐
- SQL Server中的六种约束:主键约束,外键约束,唯一约束,非空约束,检查约束,默认约束
什么是约束? 数据库-由若干张数据表组成(理解为一个类库) 数据表-由行和列组成的一个二维数组(理解为一个类) 列-字段(理解为表中对象的一个属性) 行-理解为表中的一个对象 约束是数据库中保证数据完 ...
- 如何列出引用SQL Server中给定表的所有外键?
我需要在SQL Server数据库中删除一个高度引用的表. 我如何获取要删除表需要删除的所有外键约束的列表? (与在Management Studio的GUI中单击相比,SQL的答案更好.) #1楼 ...
- mybatis添加记录时返回主键id
参考:mybatis添加记录时返回主键id 场景 有些时候我们在添加记录成功后希望能直接获取到该记录的主键id值,而不需要再执行一次查询操作. 在使用mybatis作为ORM组件时,可以很方便地达到这 ...
- SQL语句 -非空约束 - 唯一约束 - 主键约束 - 默认约束 -外键约束
文章目录 约束 约束介绍和分类 非空约束 唯一约束 主键约束 默认约束 案例练习 外键约束 约束 约束介绍和分类 约束的概念: 约束是作用于表中列上的规则,用于限制加入表的数据 约束的存在保证了数据库 ...
- 主键主键外键和索引_主键和外键的目的/用途是什么?
主键主键外键和索引 Primary and foreign keys are a way in which to constrain related data together to ensure d ...
- SQL Server中字段、记录、表、列、行、属性、元组、主键、外键的含义
目录 零.码仙励志 一.字段 二.记录 三.表 四.字段.记录.表的关系 五.列 六.行 七.属性 八.元组 九.主键 十.外键 零.码仙励志 坚持和放弃,都不会绝对正确.最恨不过一句,逼不得已.最大 ...
- 主键SQL教程–如何在数据库中定义主键
Every great story starts with an identity crisis. Luke, the great Jedi Master, begins unsure - " ...
- pandas to_sql保存数据到数据库后,添加自增长的主键ID(PRIMARY KEY)
构造dataframe import pandas as pd import numpy as npdf = pd.DataFrame(data=np.random.randint(0, 20, si ...
- MS-SQL (sql server)添加数据库只读用户K3DBSQP,并遍历所有数据库添加访问只读访问权限
MS-SQL添加数据库只读用户K3DBSQP --添加只允许访问指定表的用户: exec sp_addlogin 'K3DBSQP','密码','master' --添加到数据库 ...
- SQL语句(二)创建带主键和约束的数据表
内容摘要 创建带主键和约束的表 创建带组合主键和外键的表 1. 创建带主键和约束的表 Student (学生表) CREATE TABLE Student ( sclass varchar(10) N ...
最新文章
- hi3559 h264
- 修改ubuntu的终端提示符
- 解读全球海缆地图,带你看懂隐藏的秘密
- 深度探索C++ 对象模型(6)-Data member的绑定
- 解决Mac上adb: command not found问题
- 你的开发好帮手:下一代云原生开发工具技术
- go中make和new的用法,以及nil用法
- 07到09程序员对自己工资的态度···
- java pdfreader 用法_使用 iText 进行 Acroform 编辑的 Pdf
- 【解题报告】2021CCPC东北四省赛
- MATLAB求解微分方程
- 云呐|固定资产管理的目的,固定资产管理办法的目的
- 静态网页与动态网页的差异
- Centos 7 硬盘扩容
- 供参考的the-gan-zoo,列出的GAN相关模型和论文
- C# RadioButton: 单选按钮控件
- ffmpeg将图片合成视频
- Oracle常用标准表
- 手机群控相关软件和开源框架
- Ubuntu下安装搜狗输入法、截屏软件、谷歌浏览器