MySQL无法级联
以下是我建的表:
CREATE TABLE user (
name varchar(50) default NULL,
author varchar(50) NOT NULL default '',
PRIMARY KEY (author)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE news (
headline varchar(250) NOT NULL default '',
author varchar(50) default NULL,
body longtext,
date varchar(100) default NULL,
PRIMARY KEY (headline),
foreign key (author) references user(author) on delete cascade on update cascade
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
给表插入以下数据:
insert into user values('name1','author1');
insert into `news` values('headline1','author1','body1','date1');
当我执行delete from user where author='author1'时,user表的记录是删除了,但news表中对应的记录却还在!请问这是什么原因??
要使用Innodb引擎才支持。
ENGINE=MyISAM
MyISAM 并不支持外键,你需要用innodb.
ALTER TABLE TT type innodb;
相关问答:
我现在学习MYSQL,问下mysql储存过程如何建立和使用,最好写成$sql="sql语句",$re=mysql_query($sql);谢谢
建议你先自己看一下文档中的例子。
http://dev.mysql.com/doc/refman/5.1/zh/stored-pro ......
我用的like模糊查询,比如mysql的name中有“csdn论坛系统”这几个字,如何在 <input>中查询“csdn 系统”也能出来这个“csdn论坛系统”,我现在是查“csdn”或者“系统”都可以。谢谢各位了!不知道我这么表达 ......
在安装Java编译器的Eclipse的时候,对环境变量进行了配置,在安装MySQl的时候也要对环境变量进行配置;那么后面的配置会影响前面的Eclipse的配置吗?
请大家多指教~!谢谢!
不会把,我这都装了的 我系统里 还装了 ......
mysql>create book(
->id varchar(20) not null,g
->
以上是在mysql命令行里的操作
在上面中我在倒数第二行多打了一个字母g然后按了回车键,请问从倒数第一行怎么 ......
我的Mysql 使用的时候 用dos建立的数据表 在dos中能显示出中文
但是在 其他的可视页面 和网页中都显示乱码 如何解决?
在mysql控制台:show variables like 'char%';贴结果出来看看。
mysql命令行模式下: ......