SQL删除某一列的默认约束
--删除某字段的所有关系 declare @tbname sysname,@fdname sysname select @tbname='t' --要处理的表名 ,@fdname='a' --要处理的字段名 --定义删除处理的语句 declare tb cursor local for --默认值约束 select sql='alter table ['+b.name+'] drop constraint ['+d.name+']' from syscolumns a join sysobjects b on a.id=b.id and a.name=@fdname and b.name=@tbname join syscomments c on a.cdefault=c.id join sysobjects d on c.id=d.id union --外键引用 select s='alter table ['+c.name+'] drop constraint ['+b.name+']' from sysforeignkeys a join sysobjects b on b.id=a.constid join sysobjects c on c.id=a.fkeyid join syscolumns d on d.id=c.id and a.fkey=d.colid and d.name=@fdname join sysobjects e on e.id=a.rkeyid and e.name=@tbname join syscolumns f on f.id=e.id and a.rkey=f.colid union --主键/唯一键/索引 select case when e.xtype in('PK','UQ') then 'alter table ['+c.name+'] drop constraint ['+e.name+']' else 'drop index ['+c.name+'].['+a.name+']' end from sysindexes a join sysindexkeys b on a.id=b.id and a.indid=b.indid join sysobjects c on b.id=c.id and c.xtype='U' and c.name=@tbname join syscolumns d on b.id=d.id and b.colid=d.colid and d.name=@fdname left join sysobjects e on e.id=object_id(a.name) where a.indid not in(0,255) --执行删除 declare @s varchar(8000) open tb fetch next from tb into @s while @@fetch_status=0 begin exec(@s) fetch next from tb into @s end close tb deallocate tb
SQL删除某一列的默认约束相关推荐
- Mysql增加、删除和修改列属性和约束,和一些有用的查询语句
最近在整理关于MySql的东西,把一些需要记录的东西写下来,以便以后查询和浏览,以下是一些操作技巧. 如果[某数据库]存在就删除[某数据库] DROP DATABASE IF EXISTS db; 如 ...
- 2019-7-26 [MySQL] 安装与介绍 语句分类/语法 数据类型 DDL数据定义:创建/查看/删除/使用 DML数据操作:增删改 主键约束 自动增长列 非空约束 默认值 Navicat
文章目录 0.知识回顾 1.数据库介绍 1.1 数据库概述 1.1.1 什么是数据库 1.1.2 什么是数据库管理系统 1.1.3 数据库与数据库管理系统的关系 1.2 数据库表 1.3 表数据 1. ...
- SQL语句中,创建标识列、默认值及各种约束的语法介绍
虽然创建表中字段的主外键.标识列.唯一约束.check约束等可以使用视图法创建,但最基本的还是应该会使用sql语句来创建这些吧,咱废话少说,直接上干货!!! 标识列: 在创建表的字段时加上identi ...
- mysql 去掉默认约束_06. 默认约束-创建、添加和删除
# 数据库的基本操作 创建 删除 数据库.创建 删除表 修改 表名 数据类型 字段名 添加字段 删除 字段 调整字段位置 更换存储引擎 删除外键 删除 数据表 包括被关联父表 # 数据完整性六项约束 ...
- mysql怎么添加默认约束_分享知识-快乐自己:MySQL中的约束,添加约束,删除约束,以及一些其他修饰...
创建数据库: CREATE DATABASES 数据库名: 选择数据库: USE 数据库名: 删除数据库: DROP DATAVBASE 数据库名: 创建表: CREATE TABLE IF NOT ...
- sql删除字段约束 删除字段
1 /*******sql删除字段约束 删除字段**********/ 2 DECLARE @table NVARCHAR(50);---定义表 3 DECLARE @cloumn NVARCHAR( ...
- SQL Server中的六种约束:主键约束,外键约束,唯一约束,非空约束,检查约束,默认约束
什么是约束? 数据库-由若干张数据表组成(理解为一个类库) 数据表-由行和列组成的一个二维数组(理解为一个类) 列-字段(理解为表中对象的一个属性) 行-理解为表中的一个对象 约束是数据库中保证数据完 ...
- SQL语句 -非空约束 - 唯一约束 - 主键约束 - 默认约束 -外键约束
文章目录 约束 约束介绍和分类 非空约束 唯一约束 主键约束 默认约束 案例练习 外键约束 约束 约束介绍和分类 约束的概念: 约束是作用于表中列上的规则,用于限制加入表的数据 约束的存在保证了数据库 ...
- sql向数据库表中插入列,sql给表的列添加说明,sql添加主外键约束,增加列,增加字段
规则代码 use 数据库名--向表中插入列alter table 表名 add 列名 类型go--给表的列添加说明 execute sp_addextendedproperty 'MS_Descrip ...
最新文章
- The Innovation | Volume 2 Issue3 正式出版
- Editplus快捷键大全
- VirtualBox 启动时提示“获取 VirtualBox COM 对象失败”的解决
- 踩自行车来进行人力发电,真的能驱动旋转木马吗?
- 在15分钟内使用Spring Boot和Spring Security构建一个Web应用程序
- Java泛型面试问题
- java串口发送16进制数据_MFC串口通信发送16进制数据的方法
- 类中调用界面ActiveX控件报错当前线程不在单线程单元中因此无法实例化 ActiveX 控件的解决办法...
- kubernetes安装_在 Kubernetes 上安装 Gitlab CI Runner
- Autotools发展史
- 上海车展自动驾驶产业链盘点
- SMT32F767通过STM32CUBE HAL库配置QSPI和W25Q256驱动
- Android AMS 与 APP 进程通信
- 运行iphone模拟器
- Unity3D中玩家的移动方式,三大类型,八种方式
- leaflet+D3
- 2021福州金桥学校高考成绩查询,2021年福建高考成绩排名及成绩公布时间什么时候出来...
- 68个Python内置函数详解,进阶必备
- 解读大内老A的《.NET Core框架本质》
- 怎么使计算机桌面整洁,如何管理电脑桌面,让桌面清洁,干净,大气......
热门文章
- 算法题:将一维数组中的非零元素移动到数组前端(后端)
- 量化入门系列:沪深300、中证500、中证1000的估值百分位
- 学生成绩管理系统V1.0
- 计算机软件实习项目一 简单计算器 (Qt实现计算器界面) 12-5
- linux NetworkManager和networking 冲突网络跳线
- LAS(Listener、Attender、Speller)端到端构架
- 电商产品设计:后台营销功能模块设计-优惠券活动(三)
- 在思科设备上使用华三光模块
- 计算机操作题ppt考试题库,计算机二级考试MSOffice考试题库ppt操作题附答案
- 第十二届计算智能与软件工程国际研讨会(CiSE-BT 2019)--12月泰国曼谷