mysql中建立外鍵的方法

字號(hào):

找了很久才找到并搞清楚的mysql中建立外鍵的方法,看下面的例子。
     一個(gè)主表blog博客表,
    DROP TABLE IF EXISTS `blog`;
    CREATE TABLE `blog` (
     `id` int(11) NOT NULL auto_increment,
     `title` varchar(11) default NULL,
     `content` varchar(11) default NULL,
     PRIMARY KEY (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
     另一個(gè)表comment,評(píng)論表
     博客表和評(píng)論表關(guān)系是1:N
    drop table comment;
    create table comment(
     id int primary key,
     user varchar(11),
     email varchar(11),
     url varchar(11),
     content varchar(11),
     addTime date,
     blog_id int,
     constraint FK_blog_id foreign key (blog_id) references blog(id)
    )ENGINE=InnoDB DEFAULT CHARSET=gb2312;
     注意,一定要varchar(11),要不然就錯(cuò)了,我是根據(jù)已有表導(dǎo)出sql才看出來的.
     這個(gè)sql語句用sql-front導(dǎo)出后的結(jié)果是:
    DROP TABLE IF EXISTS `comment`;
    CREATE TABLE `comment` (
     `id` int(11) NOT NULL,
     `user` varchar(11) default NULL,
     `email` varchar(11) default NULL,
     `url` varchar(11) default NULL,
     `content` varchar(11) default NULL,
     `addTime` date default NULL,
     `blog_id` int(11) default NULL,
     PRIMARY KEY (`id`),
     KEY `FK_blog_id` (`blog_id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
    ALTER TABLE `comment`
     ADD FOREIGN KEY (`blog_id`) REFERENCES `blog` (`id`);