已采纳回答 / Blade20
老师的有row2是因为他的表里边还有另外的值有约束,你的表里只有PID有约束。 你的输出结果key_name:pid; 我的这个表就有主键约束和唯一约束,就输出了两行:mysql> show indexes from tbl4\G*************************** 1. row *************************** Table: tbl4 Non_unique: 0 Key_name: PRIMARY Seq_in_index: 1 ...
2016-08-26
已采纳回答 / 土亢
参照和外键类型是数字类型,那么长度必须相同,如果是字符类型,可以不同,没有为什么,视频里老师就是这么讲的,规定而已,而且,这种物理约束,必须用InnoDb,不常用,所以了解一下就好,学习后面的子查询,分组,连接是重点
2016-08-25
已采纳回答 / heruibin322
set global sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';set session sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_U...
2016-08-24
已采纳回答 / 慕粉3822249
你先用 show databases; 命令看一看当前环境中有没有 test 数据库, 可能是你用 drop database **** 命令drop掉了。其实完全可以自己建一个数据库, create database test1;
2016-08-23
已采纳回答 / 海哥来了
法一:已经建好表后添加外键alter table 表 add constraint 外键约束名称 foreign key (列) references 表 (主键列);法二:建表时添加外键CREATE TABLE Orders(O_Id int NOT NULL,OrderNo int NOT NULL,Id_P int,PRIMARY KEY (O_Id),//主键FOREIGN KEY (Id_P) REFERENCES Persons(Id_P)//外键)
2016-08-23
已采纳回答 / charsandrew
可以使用字段修改语句如下:ALTER TABLE users2 CHANGE id id SMALLINT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT;这个语句相当于修改了重写了原id字段。不过我怀疑3-6节还没有讲到这个语句,或许可以看下MODIFY...SET..添加约束是否可行,我有点忘记了。另外`id` smallint(5) unsigned NOT NULL DEFAULT '0' 应该是DEFAULT 0 吧,毕竟id是int型的。
2016-08-23