SQLServer如何添加删除外键、主键,以及更新自增属性

1.添加和删除主键和外键。
例如:-----删除主键约束DECLARE@NAMESYSNAMEDECLARE@TB_NAMESYSNAMESET@TB_NAME='Date'SELECTTOP1@NAME=NAMEFROMSYS.OBJECTSWITH(NOLOCK)WHERETYPE_。
DESC='PRIMARY_KEY_CONSTRAINT'ANDPARENT_OBJECT_ID=(SELECTOBJECT_IDFROMSYS.OBJECTSWITH(NOLOCK)WHERENAME=@TB_NAME)SELECT@NAMEasPKDECLARE@ALTERSQLNVARCHAR(MAX)SET@ALTERSQL=N'ALTERTABLE'+@TB_NAME+'DROPCONSTRAINT'+@NAME+''EXECSP_EXECUTESQL@ALTERSQL----添加主键约束altertableDateaddconstraintPK_Dateprimarykey(ID)----设置外键的SQL语句限制条件:altertablestudentaddconstraintFK_student_classesforeignkey(cla_id)referencesclasses(ID)----删除外键约束altertablestudentdropconstraintFK_student_classes2.更新自增属性------如果只插入指定值,可以使用下面的语句临时覆盖SETIDENTITY_INSERTclassesONINSERTINTOclasses(ID,Name)VALUES(7,'TestTry1')SETIDENTITY_INSERT[classes]OFF-----添加列、删除自增列、更改列名altertableclassesaddID_TempintupdateasetID_Temp=IDaltertableclassesdropcolumnIDexecsp_rename'ID_Temp','ID','column'--------通过更改表的系统列的属性,不正确使用此方法可能会导致其他不可预测的错误(该操作不会成功)sp_configure'allowupdate',1使用overridegoupdatesysc重新配置olumnssetcolstat=0wherecolstat=1andid=object_id('tablename')gosp_configure'allowupdate',0reconfigurewithoverrideSQLServer如何添加、删除外键、主键和更新自增属性

Oracle数据库表创建、删除(包括主键和索引)以及表结构的增_删_改SQL语句相关脚本

创建表结构要创建表,可以使用如下SQL语句:createtable表名(idvarchar2(64),namevarchar2(230),agenumber(1),约束名primarykey(id));给表添加注释:commentontableis'表名Comment';commenton列表名.idis'主键id';commenton列表名.nameis'name';commenton列表名.ageis'age';删除表并清空表数据。
直接删除表:droptable表名;清除表数据而不影响原表结构:truncatetable表名;删除全表数据效率较高,但如果表有索引,不建议使用:deletefrom表名;修改表结构修改表名:altertabletablenamerenametonewtablename;新字段:可更改的表名add(field字段类型);修改字段名:altertable表名renamecolumn字段名为新字段名;修改字段类型:altertable表名modify(字段名字段类型);删除字段:altertable表名dropcolumn字段名;添加主键约束:altertable表名addconstraint约束名primarykey(主键字段名);删除主键约束:altertable表名dropconstraint约束名;创建索引:创建普通索引:createindex索引名on表名(字段名);创建唯一索引:createuniqueindex索引名on表名(字段名);删除索引:dropindex索引名;

altertable[student]dropprimarykey(id)我想删除主键,请问这句SQL语句错在哪儿?

ALTERTABLE[dbo].[AA_BusObject]DROPCONSTRAINT[PK_student]下面是在帮助中找到的信息(我遵循了,哈哈):DROP{[CONSTRAINT]constraint_name|COLUMNcolumn_name}从表中删除指定的constraint_name或column_name。
如果兼容级别为65或更低,则不允许使用DROPCOLUMN。
您可以列出多个列或约束。
无法删除以下列:复制的列。
索引中使用的列。
CHECK、FOREIGNKEY、UNIQUE或PRIMARYKEY约束中使用的列。
具有关联默认值(使用DEFAULT关键字定义)或绑定到默认对象的列。
列绑定到规则。