SQL删除列、查找外键约束、删除约束语句实例讲解
时间:2018-09-22
本文章向大家介绍SQL删除列、查找外键约束、删除约束语句实例讲解,需要的朋友可以参考一下
一 SQL删除列的语句是:
alter table tableName drop column columnName --(其中,tableName为表名,columnName为列名)
但是,如果某列有约束时,不能直接删除,需要先删除约束,再删除列。如果某个列是外键,在不知道外键约束名称的情况下,那么首先是查找外键约束名称,根据名称删除约束,然后再删除列。
二 如何查找外键约束
DECLARE @TableName NVARCHAR(64) = ''
DECLARE @ColumnName NVARCHAR(32) = ''SELECT c.name FROM sysconstraints a
inner join syscolumns b on a.colid=b.colid
inner join sysobjects c on a.constid=c.id
where a.id=object_id(@TableName)
and b.name=@ColumnName
上述代码在使用的时候需要给@TableName赋值实际的表名,@ColumnName为实际的列名。
三 知道了约束名就可以删除约束了
ALTER TABLE @TableName DROP CONSTRAINT @CONSTRAINT_NAME
四 将上面的代码合并,于是有下面的代码
DECLARE @TableName NVARCHAR(64) = ''
DECLARE @ColumnName NVARCHAR(32) = ''
DECLARE @CONSTRAINT_Key SYSNAME
SELECT @CONSTRAINT_Key = c.name FROM sysconstraints a
inner join syscolumns b on a.colid=b.colid
inner join sysobjects c on a.constid=c.id
where a.id=object_id(@TableName)
and b.name=@ColumnName
DECLARE @Sql NVARCHAR(512) = N'ALTER TABLE ' + @TableName + ' DROP CONSTRAINT ' + @CONSTRAINT_Key
EXECUTE sys.sp_executesql @Sql
- PhalApi-APK--APK文件解包处理
- [喵咪PHP]页面显示空白问题
- 数据库中间件 Sharding-JDBC 源码分析 —— 结果归并
- PhalGo-Request
- PhalApi-Excel
- PhalGo-Viper获取配置
- Dubbo 源码解析 —— 集群容错架构设计
- PhalGo-ADM思想
- 数据库中间件 Sharding-JDBC 源码分析 —— JDBC实现与读写分离
- Pytorch 0.3.0 发布:新增张量函数,支持模型移植
- 数据库分库分表中间件 Sharding-JDBC 源码分析 —— SQL 执行
- PhalGo-初识PhalGO
- 【学术】如何在神经网络中选择正确的激活函数
- PhalGo-Echo路由
- MySQL 教程
- MySQL 安装
- MySQL 管理与配置
- MySQL PHP 语法
- MySQL 连接
- MySQL 创建数据库
- MySQL 删除数据库
- MySQL 选择数据库
- MySQL 数据类型
- MySQL 创建数据表
- MySQL 删除数据表
- MySQL 插入数据
- MySQL 查询数据
- MySQL where 子句
- MySQL UPDATE 查询
- MySQL DELETE 语句
- MySQL LIKE 子句
- mysql order by
- Mysql Join的使用
- MySQL NULL 值处理
- MySQL 正则表达式
- MySQL 事务
- MySQL ALTER命令
- MySQL 索引
- MySQL 临时表
- MySQL 复制表
- 查看MySQL 元数据
- MySQL 序列 AUTO_INCREMENT
- MySQL 处理重复数据
- MySQL 及 SQL 注入
- MySQL 导出数据
- MySQL 导入数据
- MYSQL 函数大全
- MySQL Group By 实例讲解
- MySQL Max()函数实例讲解
- mysql count函数实例
- MYSQL UNION和UNION ALL实例
- MySQL IN 用法
- MySQL between and 实例讲解
- antlr4入门篇
- 定位生产问题时,异常堆栈莫名丢了,何解?
- 一个爬取用户所有微博的爬虫,还能断网续爬那种
- MySQL组复制(MGR)全解析 Part 8 多主模式部署指南
- MySQL组复制(MGR)全解析 Part 9 MGR的要求和限制
- MySQL Galera Cluster全解析 Part 3 状态快照传输(SST)
- 一口气搞懂「文件系统」,就靠这 25 张图了
- Oracle ASM 环境增加控制文件
- 利用注解进行 Spring 开发
- 40张图揭秘,「键入网址发生了什么」
- Spring 代理模式知多少
- 一条SQL引发的“血案”:与SQL优化相关的4个案例
- Mycat分库分表全解析 Part 3 Mycat的安装
- Oracle非图形化界面创建数据库
- Mycat分库分表全解析 Part 5 Mycat 分片规则介绍