-创建表格语法:
create table 表名(
字段名1 字段类型(长度) 是否为空,
字段名2 字段类型 是否为空
);
-增加主键 alter table 表名 add constraint 主键名 primary key (字段名1);
-增加外键: alter table 表名
add constraint 外键名 foreign key (字段名1)
references 关联表 (字段名2);
在建立表格时就指定主键和外键
create table T_STU (
STU_ID char(5) not null,
STU_NAME varchar2(8) not null,
constraint PK_T_STU primary key (STU_ID)
);
主键和外键一起建立:
create table T_SCORE (
EXAM_SCORE number(5,2),
EXAM_DATE date,
AUTOID number(10) not null,
STU_ID char(5),
SUB_ID char(3),
constraint PK_T_SCORE primary key (AUTOID),
constraint FK_T_SCORE_REFE foreign key (STU_ID)
references T_STU (STU_ID)
)
oracle命令建立主键外键
1、创建一张学生表
[sql]
SQL> create table t_stu(
2 stuid number(10) primary key,
3 stuname varchar2(20) not null,
4 stusex varchar2(2) default '男' check(stusex in('男','女')));
Table created
Executed in 0.547 seconds
2、创建一张课程表
[sql]
SQL> create table t_couse(
2 couseid number(10) primary key,
3 cousename varchar2(20) not null,
4 cousetype varchar2(4));
www.2cto.com
Table created
Executed in 0.062 seconds
3、创建一张学生课程成绩表(包括主外键)
[sql]
SQL> create table t_score(
2 scoreid number(10) primary key,
3 stuid number(10) references t_stu(stuid),
4 couseid number(10),
5 constraint fk_couseid foreign key(couseid)
6 references t_couse(couseid)
7 on delete cascade);
Table created