判断主键是否存在,存在则删除,用SQL怎么写?
我写的IF EXISTS (SELECT * FROM sys.all_objects WHERE type_desc= N'PK_NAME')
ALTER TABLE TABLE_NAME DROP CONSTRAINT PK_NAME
相关推荐
SQL SERVER-主键的建立和删除
PRIMARY KEY 约束标识数据库表中的每条记录。主键必须包含的值。主键列不能包含 NULL 值。每个表都应该有一个主键,并且每个表只能有一个主键。主键约束操作包含了添加约束和删除约束,修改约束其实是添加约束或者删除约束。添加主键约束比较 简单,但是删除一个没有约束名的主键约束则比较复杂,如果不是很不了解SQL Server的话则比很难实现该功能。 主键约束操作基本语句 如果是在新建表的时候添加主键约束比较简单,直接在列名后加入primary key即可,标准的添加主键约束的SQL脚本如下: create table 表名 ( 字段名1 int not null,
SQL判断字段列是否存在的方法
增加字段 代码如下:alter table docdsp add dspcode char(200)删除字段 代码如下:ALTER TABLE table_NAME DROP COLUMN column_NAME修改字段类型 代码如下:ALTER TABLE table_name ALTER COLUMN column_name new_data_type改名sp_rename更改当前数据库中用户创建对象(如表、列或用户定义数据类型)的名称。语法 代码如下:sp_rename [ @objname = ] ‘object_name’ , [ @newname = ] ‘new_nam
Oracle删除表前判断表名是否存在若存在则删除
在Oracle中若删除一个不存在的表,如 “DROP TABLE notExistTable”,则会提示: ORA-00942:表或视图不存在, 若使用程序执行该语句则会报异常,这就需要我们再删除表前判断该表是否存在,若存在则删除. 下面是不使用存储过程实现删除表的SQL: 代码如下: <span xss=removed>DECLARE num NUMBER; BEGIN SELECT COUNT(1) INTO num FROM USER_TABLES WHERE TABLE_NAME = UPPER(‘tab
mysql判断表是否存在然后批量删除的操作
1、在网上找了许久都没有找到判断表是否存在,然后模糊删除的。但是最后找到了一个曲线救国的方法。 需求:删除表中后缀是 _待删除 的表 1、第一步,找到所有的这样的表,并且拼装好删除表的sql Select CONCAT( 'DROP TABLE IF EXISTS ', table_name, ';' ) FROM information_schema.tables Where table_name LIKE '%_待删除'; 执行结果 2、第二步:去一一执行删除语句,有能力的可以去写一个脚本执行什么的 3、sql解析 3-1 :concat 字符串拼接 3-2 :DROP TABLE
SQL语句删除和添加外键、主键的方法
–删除外键 语法:alter table 表名 drop constraint 外键约束名 如: alter table Stu_PkFk_Sc drop constraint FK_s alter table Stu_PkFk_SC drop constraint FK_c –添加外键 语法:alter table 表名 add constraint 外键约束名 foreign key(列名) references 引用外键表(列名) 如: alter table Stu_PkFk_Sc add constraint Fk_s foreign key (sno) references Stu


