标签:arch tables min tiny ddl images 文件 div exist
8.删除数据库:DROP DATABASE [IF EXISTS] 数据库名
CREATE TABLE [IF NOT EXISTS] 表名
(
列名 类型,
列名 类型,
…
其他选项
)
1 > 夫妻的关系就是一对一的关系 2 > 一个丈夫只能有一个妻子,一个妻子只有一个丈夫 3 4 #一对一关系 5 #创建一个husband表 6 CREATE TABLE husband( 7 id INT PRIMARY KEY, 8 hname VARCHAR(50) 9 ) 10 11 #创建一个wife 12 CREATE TABLE wife( 13 id INT PRIMARY KEY, 14 wname VARCHAR(50), 15 FOREIGN KEY (id) REFERENCES husband(id) 16 ) 17 18 #插入一个husband 19 INSERT INTO husband VALUES(1,‘武大郎‘); 20 21 INSERT INTO husband VALUE(1,‘西门庆‘); 22 23 #插入一个wife 24 INSERT INTO wife VALUES(1,‘潘金莲‘);
1 例子:部门与员工 2 - 一个部门可以有多个员工,一个员工只能属于一个部门 3 - 一对多的关系我们一般是通过在多的一方来保存一的一方主键 4 #一对多的关系 5 #创建一个dept表 6 CREATE TABLE dept ( 7 8 id INT PRIMARY KEY AUTO_INCREMENT, 9 dept_name VARCHAR(50) 10 11 ) 12 13 #创建一个员工表 14 CREATE TABLE emp( 15 id INT PRIMARY KEY AUTO_INCREMENT, 16 emp_name VARCHAR(50), 17 dept_id INT, 18 FOREIGN KEY (dept_id) REFERENCES dept(id) 19 )
1 > 老师和学生 2 - 一个老师可以有多个学生 3 - 一个学生可以有多个老师 4 - 多对多的关系我们一般都是以创建一个中间表的形式来映射 5 - 例子: 6 #多对多的关系 7 #创建一个tea 8 CREATE TABLE tea( 9 id INT PRIMARY KEY AUTO_INCREMENT, 10 tname VARCHAR(50) 11 ) 12 13 #创建一个学生 14 CREATE TABLE stu( 15 id INT PRIMARY KEY AUTO_INCREMENT, 16 sname VARCHAR(50) 17 ) 18 19 #创建一个中间表 20 CREATE TABLE tea_stu( 21 tea_id INT, 22 stu_id INT, 23 FOREIGN KEY (tea_id) REFERENCES tea(id), 24 FOREIGN KEY (stu_id) REFERENCES stu(id) 25 ) 26 27 28 #插入几个老师 29 INSERT INTO tea VALUES(NULL,‘张三丰‘); 30 INSERT INTO tea VALUES(NULL,‘陈近南‘); 31 INSERT INTO tea VALUES(NULL,‘扫地僧‘); 32 33 #插入几个学生 34 INSERT INTO stu VALUES(NULL,‘张无忌‘); 35 INSERT INTO stu VALUES(NULL,‘韦小宝‘); 36 INSERT INTO stu VALUES(NULL,‘乔峰‘); 37 INSERT INTO stu VALUES(NULL,‘杨过‘);
1 SELECT SUM(score),id 2 FROM stu 3 WHERE id > 2 4 GROUP BY snum 5 HAVING SUM(score) > 90 6 ORDER BY id ASC 7 LIMIT 1,2;
1 纵向连接(union ,union all) 2 3 select name from stu1 4 UNION all 5 select name from stu2 6 7 注意:union会对数据进行过滤,保证数据唯一,而union all不会对数据进行过滤! 8 9 横向连接 10 join on来完成横向连接 11 inner join :只会显示满足条件的数据! 12 select * from person p 13 inner join orders o 14 on p.id = o.oid 15 16 left on:又称为:left out on:左外连接会将左表中所有的数据都显示出来! 17 select * from person p 18 left join orders o 19 on p.id = o.oid
数据类型 |
说明 |
CHAR |
1~255个字符的定长串,它的长度必须在创建时指定,否则MySQL假定为CHAR(1) |
VARCHAR |
可变长度,最多不超过255字节,如在创建时指定VARCHAR(n),则可存储0~n个字符的变长串 |
TINYTEXT |
同TEXT,最大长度为255字节 |
MEDUIMTEXT |
同TEXT,最大长度为16K |
TEXT |
最大长度为64K的变长文本 |
LONGTEXT |
同Text,最大长度为4GB(纯文本,一般不会到4G) |
数据类型 |
说明 |
int[(m)] |
有符号值:-2147683648 到2147683647(- 2^31 到2^31- 1) 无符号值:0到4294967295(0 到2^32 – 1) |
double[(m, d)] |
最小非零值:±2.2250738585072014e – 308 |
decimal (m, d) |
可变;其值的范围依赖于m 和d |
数据类型 |
说明 |
DATE |
1000-01-01——9999-12-31 |
TIME |
-838:59:59——838:59:59 |
DATETIME |
1000-01-01 00:00:00——9999-12-31 23:59:59 |
TIMESTAMP |
19700101080001——20380119111407 |
数据类型 |
说明 |
TITYBLOB |
最大长度为255字节 |
BLOB |
最大长度为64KB |
MEDIUMBLOB |
最大长度为16MB |
LONGBLOB |
最大长度为4GB |
标签:arch tables min tiny ddl images 文件 div exist
原文地址:http://www.cnblogs.com/kangxingyue-210/p/7491369.html