MySQl主键以及外键

来源:互联网 发布:泰国旅游攻略知乎 编辑:程序博客网 时间:2024/06/10 04:23

1、创建雇员表
mysql> create table gyb(gyh char(4) primary key,xm char(8) not null,nl smallint(
55),dz varchar(10),xs int(50));
Query OK, 0 rows affected (0.11 sec)

mysql> desc gyb;
+-------+--------------+------+-----+---------+-------+
| Field | Type         | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+-------+
| gyh   | char(4)      | NO   | PRI | NULL    |       |
| xm    | char(8)      | NO   |     | NULL    |       |
| nl    | smallint(55) | YES  |     | NULL    |       |
| dz    | varchar(10)  | YES  |     | NULL    |       |
| xs    | int(50)      | YES  |     | NULL    |       |
+-------+--------------+------+-----+---------+-------+
5 rows in set (0.05 sec)
2、创建部门表
mysql> create table bmb(bmh char(4) primary key,bmm varchar(5) unique not null,b
mjl varchar(8) not null);
Query OK, 0 rows affected (0.08 sec)

mysql> desc bmb;
+-------+------------+------+-----+---------+-------+
| Field | Type       | Null | Key | Default | Extra |
+-------+------------+------+-----+---------+-------+
| bmh   | char(4)    | NO   | PRI | NULL    |       |
| bmm   | varchar(5) | NO   | UNI | NULL    |       |
| bmjl  | varchar(8) | NO   |     | NULL    |       |
+-------+------------+------+-----+---------+-------+
3 rows in set (0.04 sec)
3、创建工作表
mysql> create table gzb(gyh char(4) not null,bmh char(4) not null,gznx smallint,
foreign key (gyh) references gyb (gyh),foreign key (bmh) references bmb (bmh));
Query OK, 0 rows affected (0.08 sec)

mysql> desc gzb;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| gyh   | char(4)     | NO   | MUL | NULL    |       |
| bmh   | char(4)     | NO   | MUL | NULL    |       |
| gznx  | smallint(6) | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
3 rows in set (0.01 sec)

原创粉丝点击