MySQL学习总结1
来源:互联网 发布:七匣子淘宝 编辑:程序博客网 时间:2024/06/07 05:29
1.storage engine
其实每个engine对应的性质,就不一一说明了。
下面主要罗列一些最明显的使用场合。
①payment、secure ----InnoDB
②foreign key referential integrity constraint ----InnoDB
③transaction ---InnoDB
④full-text search ----MyISAM
MySQL 5.5之前,默认engine是MyISAM
MySQL 5.5以及之后,默认engine是InnoDB
storage engine是对于每个table而言的。不同table指定不同的engine。
2.data types
MySQL支持3组数据类型:
Numeric
Date&time
String
Numeric
①Integers
②Floating points
Data type Bytes
FLOAT
DOUBLE
DECIMAL
bytes?有疑问,我将一个float的量输入很多位,可以显示7bytes,比较少的时候又会显示3bytes
Date&time
一共有以下类型:DATE、TIME、DATETIME、YEAR、TIMESTAMP
String
附录 常见MySQL数据类型(留作备忘)
类 型
大 小
描 述
CAHR(Length)
Length字节
定长字段,长度为0~255个字符
VARCHAR(Length)
String长度+1字节或String长度+2字节
变长字段,长度为0~65 535个字符
TINYTEXT
String长度+1字节
字符串,最大长度为255个字符
TEXT
String长度+2字节
字符串,最大长度为65 535个字符
MEDIUMINT
String长度+3字节
字符串,最大长度为16 777 215个字符
LONGTEXT
String长度+4字节
字符串,最大长度为4 294 967 295个字符
TINYINT(Length)
1字节
范围:-128~127,或者0~255(无符号)
SMALLINT(Length)
2字节
范围:-32 768~32 767,或者0~65 535(无符号)
MEDIUMINT(Length)
3字节
范围:-8 388 608~8 388 607,或者0~16 777 215(无符号)
INT(Length)
4字节
范围:-2 147 483 648~2 147 483 647,或者0~4 294 967 295(无符号)
BIGINT(Length)
8字节
范围:-9 223 372 036 854 775 808~9 223 372 036 854 775 807,或者0~18 446 744 073 709 551 615(无符号)
FLOAT(Length, Decimals)
4字节
具有浮动小数点的较小的数
DOUBLE(Length, Decimals)
8字节
具有浮动小数点的较大的数
DECIMAL(Length, Decimals)
Length+1字节或Length+2字节
存储为字符串的DOUBLE,允许固定的小数点
DATE
3字节
采用YYYY-MM-DD格式
DATETIME
8字节
采用YYYY-MM-DD HH:MM:SS格式
TIMESTAMP
4字节
采用YYYYMMDDHHMMSS格式;可接受的范围终止于2037年
TIME
3字节
采用HH:MM:SS格式
ENUM
1或2字节
Enumeration(枚举)的简写,这意味着每一列都可以具有多个可能的值之一
SET
1、2、3、4或8字节
与ENUM一样,只不过每一列都可以具有多个可能的值
注:还是上面的疑问,用length(float类型变量)为什么可以得到7?
注:ENUM和SET 的都是给出可选的若干值,并只能在其中取值。
不同是SET可以一次选允许的几个值。
3.CREATE、ALTER、DROP
首先它们都是对table的操作,属于DDL--Data Definition Language。
①CREATE TABLE XXX (属性名 类型,。。。,。。。)
注:CREATE可以用于很多功能,新建用户,数据库,表格,view都是用它声明。
②DROP TABLE XXX
③ALTER TABLE XXX
ADD xxx
ADD PRIMARY KEY(XXX)
CHANGE COLUMN XXX
MODIFY COLUMN XXX
DROP COLUMEN
4.Expressions
①Literal value
②Variable:@xxx
③Operations
operator中,LIKE是简单的模式匹配,RLIKE/REGEXP是高级模式匹配
5.INSERT、UPDATE、DELETE
它们都是对于表中的元组的操作,是DML--Data Manipulation Language。
①UPDATE
UPDATE XXX SET xxx = yyy
②DELETE
在mysql中等价于TRUNCATE
可以指定删除某一元组,也可以直接删除所有元组。
注:不同是truncate XXX,而delete from XXX。
③INSERT
广义的对表写入条目可分为3种。
(1)从键盘输入:INSERT INTO XXX VALUES()
(2)从其他TABLE输入:INSERT INTO XXX SELECT * FROM YYY
(3)从外部文件输入:LOAD DATA INFILE ‘xxxxx’
补充输出为外部文件:SELECT * INTO OUTFILE ‘xxxx’
FIELDS TERMINATED BY ','
LINE TERMINATED BY '\n'
FROM XXX
6.SELECT
一般形式SELECT ___A___ FROM XXX ____B____ WHERE
①A中的选项
(1)* 表示所有选项
(2)x,y,... 表示具体指定选择的属性
(3)x AS y 表示将x选出并改名y
(4)DISTINCT x 表示只显示x属性中不重复的项目
(5)SUM(x) 表示将属性x求和
②B中的选项
(1)LIMIT x 表示只显示x数目的元组;还可以LIMIT y,x表示从y以后的x个条目
(2)ORDER BY x ASC/DESC 按x属性升序/降序显示
③WHERE及GROUP
(1)WHERE 两个条件之间用AND连接
(2)GROUP BY x 求和之后再将条目按x属性分组显示
(3)GROUP BY x HAVING 如果是求和或者其它运算之后(比如AS),不能对于运算结果进行WHERE加条件操作
这个时候可以使用HAVING 加条件操作。
- MySQL学习总结1
- MySQL学习总结1
- MySql学习总结1
- 【mysql】mysql视图学习总结
- Mysql cluster 学习总结
- mysql学习总结
- MYSQL学习总结
- mysql视图学习总结
- Mysql数据库学习总结
- mysql视图学习总结
- MySQL学习总结
- mysql视图学习总结
- mysql学习总结
- mysql视图学习总结
- MySQL学习总结
- mysql学习bug总结
- mysql学习总结 .
- mysql视图学习总结
- 每日20行之3~~~ThreadPool之RegisterWaitForSingleObject 自动定时执行(可循环)
- HDU1863:畅通工程【Kruskal & Prim】
- HDOJ--1863--畅通工程
- Binary Tree Postorder Traversal
- Android-自定义Dialog
- MySQL学习总结1
- java学习笔记-------对卡片布局管理器的深入理解
- dpkg命令
- 新blog
- JTextArea设置滚动条
- poj3320
- SQL truncate 、delete与drop区别
- web.xml
- zigbee术语简介