MySQL中的运算符

在MySQL中,常量数字默认会以8个字节来表示,8个字节就是64位。
TRUNCATE仅仅是进行截断,而不进行四舍五入:
mysql> select ROUND(1.235,2),TRUNCATE(1.235,2);
+----------------+-------------------+
| ROUND(1.235,2) | TRUNCATE(1.235,2) |
+----------------+-------------------+
| 1.24 | 1.23 |
+----------------+-------------------+
INET_ATON和INET_NTOA主要用途是将字符串的IP地址转化为数字表示的网络字节序:
mysql> select INET_ATON('192.168.1.1');
+--------------------------+
| INET_ATON('192.168.1.1') |
+--------------------------+
| 3232235777 |
+--------------------------+
1 row in set (0.01 sec)

mysql> select INET_NTOA('3232235777');
+-------------------------+
| INET_NTOA('3232235777') |
+-------------------------+
| 192.168.1.1             |
+-------------------------+
1 row in set (0.00 sec)

查看当前数据库支持的存储引擎

mysql> SHOW ENGINE \G;

Innodb 外键约束

在创建索引时,可以指定在删除、更新父表时,对子表进行的响应操作,包括RESTRICT、CASCADE、SET NULL和NO ACTION。

当某个表被其他表创建了外键参照,那么该表的对应索引或者主键禁止被删除。

TEXT与BLOB

BLOB能用来保存二进制数据,比如照片;而TEXT只能用来保存字符数据,比如一篇文章或日记。

OPTIMIZE TABLE碎片整理功能,可以回收“空洞”空间。
可以使用合成的索引来提高大文本字段的查询功能。

浮点数与定点数

定点数实际上是以字符串形式存放的。
浮点数存在误差问题,尽量避免做浮点数比较。

字符集

字符集概述

字符集就是一套文字符号及其编码、比较规则的集合。

####mysql支持的字符集简介
MySQL的字符集包括字符集(character)和校对规则(collation)两个概念。其中字符集用来定义MySQL存储字符串的方式,校对规则用来定义比较字符串的方式。字符串和校对规则是一对多的关系。

校对集结尾:
_ci:大小写不敏感
_cs:大小写敏感
_bin:按照编码的值进行比较,对大小写敏感

MySQL字符集的设置

MySQL字符集和校对规则有4个级别的默认设置:服务器级、数据库级、表级和字段级。

发表评论

电子邮件地址不会被公开。 必填项已用*标注