想请问一下,在同一个表内可以创建多个索引和外键吗?
比如一个‘教师_课程_学生’表里面有教师ID,课程ID,学生ID,我想把这3个字段和‘教师表’的ID,‘课程表’的ID。‘学生表’的ID关联起来,请问如何实现,谢谢
比如一个‘教师_课程_学生’表里面有教师ID,课程ID,学生ID,我想把这3个字段和‘教师表’的ID,‘课程表’的ID。‘学生表’的ID关联起来,请问如何实现,谢谢
解决方案 »
- 请问使用 sqlite3 如何对日期进行排序?
- 求解:Mysql longtext型字段 无法插入大于65K的数据
- mysql4.0升级到5.1日期兼容性问题
- 请教 关于mysql性能测试
- MySQl怎么建立个用户连'information_schema'都不能访问
- 在哪下载MySQL啊?
- 哪里可以找到 script mysql_fix_privilege_tables?
- MySQL用户加密问题
- 全文检索(jsp+mysql)
- 程序运行中,MySQL弹出一个taskeng.exe。不知道是怎么回事?
- 请教数据库备份系统的设计思路
- ERROR 1360 (HY000): Trigger does not exist
教师ID int,
课程ID int,
学生ID int,
CONSTRAINT fk_1 FOREIGN KEY (教师ID) REFERENCES 教师表(ID),
CONSTRAINT fk_2 FOREIGN KEY (课程ID) REFERENCES 课程表(ID),
CONSTRAINT fk_3 FOREIGN KEY (学生ID) REFERENCES 学生表(ID)
)
用建立索引吗?还是直接建立外键就可以了?
除非你使用的不是INNODB,在Linux下MySql默认的表类型不是INNODB,不会启用外键功能,windows下则默认是INNODB
看来楼主根本没兴趣自己看一下MYSQL手册中的语法介绍啊。
请自行到MYSQL的手册中看一下这些语法。 CASCADE 可以满足你的要求。
reference_definition:
REFERENCES tbl_name (index_col_name,...)
[MATCH FULL | MATCH PARTIAL | MATCH SIMPLE]
[ON DELETE reference_option]
[ON UPDATE reference_option]reference_option:
RESTRICT | CASCADE | SET NULL | NO ACTION
MySQL官方文档 http://dev.mysql.com/doc/refman/5.1/zh/index.html