多字段主键语法规则:PRIMARYKEY(属性名1,属性名2.....属性名n)示例:CREATETABLEexample2(stu_id INT,course_idINTgrade FLOAT,PRIMARYKEY(stu_id,course_id));
多字段主键 语法规则:PRIMARY KEY(属性名1,属性名2,.,属性 名n) 示例: CREATE TABLE example2( stu_id INT, course_id INT, grade FLOAT, PRIMARY KEY(stu_id,course_id) );
3.1.3设置表的外键外键是表的一个特殊字段。如果字段sno是一个表A的属性,且依赖于表B的主键。那么,称表B为父表,表A为子表,sno为表A的外键。通过sno字段将父表B和子表A建立关联关系。设置表的外键指在创建表设置某个字段为外键。设置外键的原则:必须依赖于数据库中已存在的父表的主键;外键可以为空值。外键的作用是建立该表与其父表的关联关系。父表中删除某条信息时,子表中与之对应的信息也必须有相应的改变。例如,stuid是student表的主键,stuid是grade表的外键。当stuid为‘123同学退学了,需要从student表中删除该学生的信息。那么,grade表中stuid为‘123'的所有信息也应该同时删除。这样可以保证信息的完整性
3.1.3 设置表的外键 sno A B B A sno A sno B A stu_id student stu_id grade stu_id 123’ student grade stu_id 123’
语法规则:CONSTRAINT外键别名FOREIGNKEY(属性1.1,属性1.2....属性1.n)REFERENCE表名(属性2.1,属性2.2.....属性2.n)“外键别名”参数为外键的代号;“属性1”参数列表是子表中设置的外键:“表名”参数是指父表的名称;“属性2”参数列表是父表的主键
语法规则: CONSTRAINT 外键别名 FOREIGN KEY( 属性1.1,属性1.2,.,属性1.n) REFERENCE 表名(属性2.1,属性2.2,.,属性2.n) “外键别名”参数为外键的代号; “属性1”参数列表是子表中设置的外键; “表名”参数是指父表的名称; “属性2”参数列表是父表的主键
示例:CREATETABLEexample3(id INT PRIMARY KEY,stu_id INT,course_id INCONSTRAINT C_fkFOREIGNKEY(stu_id,course_id)REFERENCES example2(stu_id,course_id));
示例: CREATE TABLE example3( id INT PRIMARY KEY, stu_id INT, course_id IN CONSTRAINT c_fk FOREIGN KEY(stu_id,course_id) REFERENCES example2(stu_id,course_id) );
3.1.4设置表的非空约束非空性是指字段的值不能为空值(NULL)。非空约束将保证所有记录中该字段都有值。如果用户新插入的记录中,该字段为空值,则数据库系统会报错。例如,在id字段加上非空约束,id字段的值就不能为空值。如果插入记录的id字段的值为空,该记录将不能插入。设置表的非空约束是指在创建表时为表的某些特殊字段加上NOTNULL约束条件O语法规则如下:属性名数据类型NOTNULL
3.1.4 设置表的非空约束 NULL id id id NOT NULL NOT NULL