刚学ORACLE,对与建表有几个疑问,望高手帮我解答下
首先我建个表
create table students (
student_id number(5)
constraint student_pk primary key,
student_name varchar2(20),
student_age number(3)
constraint check_age check(age between 15 and 50)
department_id number(5)
constraint student_fk_department
references departments(department_id));
这个我从书上抄的一个表
问题1,第一个主健的constraint student_pk primary key,当中的student_pk 是不是任意取的一个名字,还是必须是表名加个-PK?
问题2,外健的问题也是同上,是不是那个student_fk_department是任意取的还是必须把两个表名中间加个_fk_.
问题3,student_age number(3)
constraint check_age check(age between 15 and 50) 这个与句中的check 是不是oracle中的保留字,如果是的话,具体怎么使用
问题4,最后想问下constraint student_fk_department
references departments(department_id)); 和语句department_id number(5)
constraint fk_student foreign key(department) references departments(department_id));
是不是一样效果,都是设置外健?
请高手回答,我问的有点乱,在线等答案,
首先我建个表
create table students (
student_id number(5)
constraint student_pk primary key,
student_name varchar2(20),
student_age number(3)
constraint check_age check(age between 15 and 50)
department_id number(5)
constraint student_fk_department
references departments(department_id));
这个我从书上抄的一个表
问题1,第一个主健的constraint student_pk primary key,当中的student_pk 是不是任意取的一个名字,还是必须是表名加个-PK?
问题2,外健的问题也是同上,是不是那个student_fk_department是任意取的还是必须把两个表名中间加个_fk_.
问题3,student_age number(3)
constraint check_age check(age between 15 and 50) 这个与句中的check 是不是oracle中的保留字,如果是的话,具体怎么使用
问题4,最后想问下constraint student_fk_department
references departments(department_id)); 和语句department_id number(5)
constraint fk_student foreign key(department) references departments(department_id));
是不是一样效果,都是设置外健?
请高手回答,我问的有点乱,在线等答案,
问题2:同上;
问题3:CHECK是约束条件,保证 student_age 字段中的值在15到50之间,如果有兴趣详细了解请GOOGLE;
问题4:
关于第四题我重新问下
department_id number(5)
constraint student_fk_department
references departmets(department_id)); 和语句department_id number(5)
constraint fk_student foreign key(department)
references departments(department_id));
是不是一样效果,都是设置外健?