1 Create Databases
create database mydb DEFAULT CHARSET=utf8;
2 Create Tables
create table ids (
id int auto_increment,
name varchar(10) not null,
num varchar(10),
description text,
primary key (id, name), -- not primary key (name, id) : ordered by fields defination
key `num` (`num`)
) ENGINE=InnoDB default charset=utf8;
create table ref (
sno varchar(10),
foreign key (sno) references ids(num) on update cascade on delete cascade
) ENGINE=InnoDB default charset=utf8;
注意:
(1) primary(field1, field2, ...)字段必须按照表中定义时的字段顺序,否则出错;
(2) 若表的一个字段(ref表的sno)是外引用,即引用另一个表的一个字段(ids表的num),那么被引用的字段(ids表的字段num)必须建立索引(key `index_name` (`num`));
(3) 若一个字段(ids表的id字段)是auto_increment型的,那么这个字段必须是定义为键(primary key);
(4) 反撇号`作用于表名、字段名;