create database exam;
use exam;create table Teacher
(T_id int primary key,
T_title varchar(255) not null,
T_pwd varchar(255) not null
);create table Radio
(r_id int primary key,
T_id int foreign key (T_id) references Teacher(T_id) on update cascade on delete cascade,
r_desc varchar(255) not null,
option_A varchar(255) not null,
option_B varchar(255) not null,
option_C varchar(255) not null,
option_D varchar(255) not null,
r_true char not null
);为什么这个在SQL08下就能顺利执行,在MYSQL下执行会报错呢?
求解。

解决方案 »

  1.   

    T_id int foreign key (T_id) references Teacher(T_id) on update cascade on delete cascade,
      

  2.   

    create table Radio
    (r_id int primary key,
    T_id int foreign key (T_id) references Teacher(T_id) on update cascade on delete cascade,
    r_desc varchar(255) not null,
    option_A varchar(255) not null,
    option_B varchar(255) not null,
    option_C varchar(255) not null,
    option_D varchar(255) not null,
    r_true char not null
    )engine=innodb;
    错误提示是什么? 建议提问时尽可能详细说明问题。
      

  3.   

    drop table if exists Teacher
    create table Teacher
    (T_id int not null,
    T_title varchar(255) not null,
    T_pwd varchar(255) not null,
    priamry key(T_id)
    )ENGIN=MyISAM Default charset=utf8;drop table if exists Radio
    create table Radio
    (r_id int not null,
    r_desc varchar(255) not null,
    option_A varchar(255) not null,
    option_B varchar(255) not null,
    option_C varchar(255) not null,
    option_D varchar(255) not null,
    r_true char not null,
    primary key(r_id),
    )engin=myisam default charset=utf8;
      

  4.   

    drop table if exists Teacher
    create table Teacher
    (T_id int not null,
    T_title varchar(255) not null,
    T_pwd varchar(255) not null,
    priamry key(T_id)
    )ENGIN=MyISAM Default charset=utf8;drop table if exists Radio
    create table Radio
    (r_id int not null,
    r_desc varchar(255) not null,
    option_A varchar(255) not null,
    option_B varchar(255) not null,
    option_C varchar(255) not null,
    option_D varchar(255) not null,
    r_true char not null,
    primary key(r_id),
    T_id int foreign key (T_id) references Teacher(T_id) on update cascade on delete cascade)engin=myisam default charset=utf8;
      

  5.   

    create table Radio
    (r_id int primary key,
    T_id int ,
    r_desc varchar(255) not null,
    option_A varchar(255) not null,
    option_B varchar(255) not null,
    option_C varchar(255) not null,
    option_D varchar(255) not null,
    r_true char not null,
    foreign key (T_id) references Teacher(T_id) on update cascade on delete cascade
    );
      

  6.   


    CREATE TABLE `Radio` (
      `r_id` int(11) NOT NULL,
      `T_id` int(11) DEFAULT NULL,
      `r_desc` varchar(255) NOT NULL,
      `option_A` varchar(255) NOT NULL,
      `option_B` varchar(255) NOT NULL,
      `option_C` varchar(255) NOT NULL,
      `option_D` varchar(255) NOT NULL,
      `r_true` char(1) NOT NULL,
      PRIMARY KEY (`r_id`),
      KEY `T_id` (`T_id`),
      CONSTRAINT `Radio_ibfk_1` FOREIGN KEY (`T_id`) REFERENCES `Teacher` (`T_id`) ON DELETE CASCADE ON UPDATE CASCADE
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;