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

1.添加和删除主键和外键。
示例:-----删除主键约束DECLARE@NAMESYSNAMEDECLARE@TB_NAMESYSNAMESET@TB_NAME='日期'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,'Test):1')SETIDENTITY_INSERT[classes]OFF-----添加列、删除自增列、修改列名altertableclassesaddID_TempintupdateasetID_Temp=IDaltertableclassesdropcolumnIDexecsp_rename'ID_Temp','ID','column'------------totable该方法使用不当可能会导致其他不可预测的错误(操作可能不成功)。
不能)sp_configure'allowupdate',1overridegoupdatesyscolumnssetcolstat=0wherecolstat=1andid=object_id('tablename')gosp_configure'allowupdate',0reconfigurewithoverrideSQLServer如何添加和删除外键、主键以及更新自增属性

SQL中设置主键约束

SQL主键约束是数据库中重要的约束机制。
它的主要作用是让表中某些字段的值唯一标识一条记录。
主键约束确保数据的唯一性和完整性,类似于个人的身份证号或学生的学号。
这些标识值在数据库内必须是唯一的,不能为空。
主键约束可以在创建表时直接添加,或者如果表已经存在的话。
主键可以由单个字段或字段组合组成。
对于单字段主键,可以通过表级约束或列级约束来实现。
表级约束允许您设置字段的标识符,而列级约束直接将字段指定为主键。
如果您想在建表时对单个字段添加主键约束,可以使用列级约束或表级约束。
当使用列级约束时,这是通过指定表名、字段名、数据类型和主键关键字来完成的。
使用表级约束时,可以设置字段标识符并指定主键字段。
SQL语句的格式类似于列级约束。
如果需要对字段组合设置主键约束,只能使用表级约束。
多字段主键约束可以通过在主键关键字后面的括号内写入多个字段,用逗号分隔来实现。
如果您想在创建表时设置“stu_school”和“stu_id”为主键,可以直接在表定义中添加相应的SQL语句。
如果要向现有表添加主键约束,可以使用“ALTERTABLE”命令。
您必须显式指定要修改的表名、添加主键时要使用的SQL语法以及要设置为主键的字段名称。
此示例向“lemon_student”表的“id”和“name”字段添加主键约束。
执行后使用“DESC”命令查看表结构,检查该字段是否成功设置为主键约束。
使用数据库时,请记住在添加主键约束之前表不得有主键。
否则,您将收到“Multipleprimarykeydependent”错误。
正确添加主键约束可以保证表中数据的唯一性和完整性,提高数据处理的准确性和效率。

sql用命令创建主键与外键。

SQL中创建主键和外键约束的方法:--创建表时可以对字段添加约束:createtableStudent(StudentNointPRIMARYKEYIDENTITY(1,1),--添加主键约束和identity的列属性(均构成实体)Integrity)StudentNamenvarchar(15)notnull,--添加非空约束,没有“notnull”默认为:可以beemptyStudentSchoolText(20)FOREIGNKEYREFERENCESSchoolTable(SchoolName),--添加外键约束,格式:FOREIGNKEYREFERENCES关联表名(字段名)StudentAgeintDEFAULT((0)),--添加默认值约束StudentSexnvarchar(2)CHECK(StudentSex=N'male'orStudentSex=N'female')--添加检查约束,格式:check(条件表达式))--如果建表后添加约束,格式为:--主键:变量表名addconstraintPK_fieldname--“PK”是主键的缩写,fieldname是要创建的字段名主键,'PK_wordSegmentName'是主键约束的名称(fieldname)——fieldname与以上--唯一约束:变量表名addconstraintUQ_unique字段名(字段名)--外键约束:变量表名addconstraintFK_name--"FK"外键外键(字段名)的缩写指关联表名(关联字段)name)-注意变量表引用'的表名称相关'和'相关字段名'AaddconstraintFK_BFforeignkey(ticket_no)引用表B(ticket_no)变量AaddconstraintFK_CForeignkey(person_no)引用表C(person_no)结果表变量addconstraintFK_StudentNoforeignkey(StudentNo)referencesStudent(StudentNo)学生降级表DECADETACADE隐藏,记分板所有学生成绩将被删除。
--检查约束:表变量名addconstraintCK_检查字段名(条件表达式)--条件表达式中的条件与关系运算符关联--默认值约束:表变量名addconstraintDF_字段名default'默认值'for字段名--'默认值”是您想要默认的值。
注意'for'--删除并创建约束:变量表名dropconstraint约束名-约束名是你之前创建的约束的名称,如:fieldPK_-注意:如果创建表时就创建了约束,不能用以下命令删除——只能在“企业管理器”中删除参考资料:http://www.studyofnet.com/news/92.html希望以上回答可以帮助到您。

怎么通过sql命令建表和生成主外键约束

直接用鼠标点击在数据库中创建表不仅速度慢,而且还会出现问题。
今天我们将了解如何使用SQL语句轻松创建表并设置主键和外键约束。

首先打开SqlSever2005软件,如下:

点击“新建查询”,如下:

首先我们来了解一下主键表和外键表的定义。
通常,外键表是包含外键的表,并且该表是主键表。
外键指向主键的表

首先创建一个新的主键表,如下:

然后运行:

然后我们到达外键表如下:

这里SQL命令的重点是设置外键部分这是:dept_idintconstraintfk_dept_id_hjjforeignkeyreferencesdept1(dept_id))注:“Foreignkey”表示外键,“reference”表示引用,后面跟主键表的名称和主键表的主键。

让我们再次运行这段代码!