Mysql手册—基本规范与数据类型】的更多相关文章

第十章      本章主要介绍了一些语法规范,如 对于表,函数,字段,在Linux上大小写敏感,Windows和MacOS上却不敏感: Mysql是如何识别函数的及用户在定义自定义函数时命名要求:通过函数名与左括号标识,中间无空格,用户自定义函数名不得与内嵌函数名重名, 用户变量的命名,声明与赋值,注意用户变量不能与Mysql关键字和保留字重合. 进制转换之类的. 表达式定义等等 注释方法:#,--,/*  */ 第十二章,Mysql数据类型 支持:数字类型,日期时间类型,字符类型,空间(spa…
项目因为历史原因使用了 GBK编码,遇到非GBK编码字符时出现乱码问题,情况比较严重,暂时先打算修改 列的字符编码为 utf8mb4. 查看 mysql 手册: 用 GBK 编码转 utf8 进行说明: 他的大概意思是,如果 是 char varchar text 等类型的,并且这些列的内容也是采用的正确的编码(GBK),也就是列的内容的编码和列的定义中指定的编码一致时,可以直接使用类似下面的语句进行处理: ALTER TABLE t MODIFY COLUMN col_name varchar…
三.MySQL数据库数据类型 MySQL数据库中支持多种数据类型:数值型.字符型.日期型 常用的数据类型: 1.整型 int:整形,存储整数 int(M):M表示预期值.与存储大小和数值的范围无关. id int 10000 id int(3) zerofill 10000 zerofill 零填充 会在左侧补0 2.浮点型 float[(M,D)]:浮点型,存储小数 salary float(6,2):表示最多6位,小数占2位,最大存储数值为:9999.99 double:浮点型,小数 3.字…
MySQL基础(1) | 数据类型 数值类型 TINYINT #小整数值,1 字节,有符号(-128,127),无符号(0,255) SMALLINT #大整数值,2 字节 MEDIUMINT #大整数值,3 字节 INT或INTEGER #大整数值,4 字节,有符号(-2147483648,2147483647),无符号(0,4294967295) BIGINT #极大整数值,8 字节 FLOAT #单精度浮点数值,4 字节 DOUBLE #双精度浮点数值,8 字节 DECIMAL #小数值,…
MySQL入门(二) 表的引擎:驱动数据的方式 - 数据库优化 # 概要:引擎是建表规定的,提供给表使用,不是数据库的 # 展示所有引擎 show engines; # innodb(默认): 支持事务, 行级锁, 外键 create table t11(id int)engine=innodb; # myisam: 查询效率要优于innodb, 当不需要支持事务, 行级锁, 外键, 可以通过设置myisam来优化数据库 create table t12(id int)engine=myisam…
选择更小的数据类型:一般情况下,应该尽量使用可以正确存储数据的最小数据类型.更小的数据类型通常更快,它们占用更少的磁盘.内存和CPU缓存,并且处理时需要的CPU周期也更少.但是要确保没有低估需要存储的值的范围 尽量选择简单的数据类型:简单数据类型的操作通常需要更少的CPU周期,例如整型比字符操作代价更低,因为字符集和校对规则(排序规则)使字符比较比整型比较更复杂(eg:存储日期和时间应该使用MYSQL内建的类型(date,time,datetime)而不是字符串:存储IP地址应该用整型) 尽量避…
MySQL入门(3)--数据类型 数字类型 整数数据类型: 数据类型 取值范围 说明 单位 TINYINT 符号值:-127~127无符号值:0~255 最小的整数 1字节 BIT 符号值:-127~127无符号值:0~255 最小的整数 1字节 BOOL 符号值:-127~127无符号值:0~255 最小的整数 1字节 SMALLINT 符号值:-32 768~32 767无符号值:0~65 535 小型整数 2字节 MEDIUMINT 符号值:-8 388 608~8 388 607无符号值…
本篇学习笔记的主要内容: 介绍MySQL支持的各种数据类型(常用),并讲解其主要特点.   MySQL支持多种数据类型,主要包括数值类型.日期和时间类型.字符串类型. 数值类型 MySQL的数值类型包括整数类型.浮点数类型.定点数类型.位类型. 整数类型 MySQL支持的整数类型有tinyint.smallint.mediumint.int.bigint(范围从小到大). zerofill 我们在定义整数类型时可以在类型名称后面的小括号内指定显示宽度,例如int(5),当插入的数值宽度小于5位时…
一. 表设计 库名.表名.字段名必须使用小写字母,“_”分割. 库名.表名.字段名必须不超过12个字符. 库名.表名.字段名见名知意,建议使用名词而不是动词. 建议使用InnoDB存储引擎. 存储精确浮点数必须使用DECIMAL替代FLOAT和DOUBLE. 建议使用UNSIGNED存储非负数值. 建议使用INT UNSIGNED存储IPV4. 整形定义中不添加长度,比如使用INT,而不是INT(4). 使用短数据类型,比如取值范围为0-80时,使用TINYINT UNSIGNED. 不建议使用…
前言: 设计规范更多的是为了确保数据库设计的合理性.为了项目最终的协调稳定性,而命名规范则更多的是为了确保设计的正式和统一. 约定优先于配置(Convention Over Configuration). 我们希望团队中所有人看到设计成果,一眼就可以明白这个字段是做什么的.代表的含义是什么,可以但不止于见名知意.再者,当前的开发模式,前后端代码及数据库文档.程序文档.接口文档等等大都是由工具生成,而其最底层的依据就是数据库,表.字段的命名注释同时会影响到工具生成的文档.代码中的类属性方法甚至是前…
1.命名规范 (1)库名.表名.字段名必须使用小写字母,并采用下划线分割. (2)库名.表名.字段名禁止超过32个字符. (3)库名.表名.字段名必须见名知意.命名与业务.产品线等相关联. (4)库名.表名.字段名禁止使用MySQL保留字.(保留字列表见官方网站) (5)临时库.表名必须以tmp为前缀,并以日期为后缀.例如 tmp_test01_20130704. (6)备份库.表必须以bak为前缀,并以日期为后缀.例如 bak_test01_20130704. 2.基础规范 (1)使用INNO…
一..数据库命名规范 1.所有数据库对象名称必须使用小写字母并用下划线分割 2.所有数据库对象名称禁止使用mysql保留关键字(如果表名中包含关键字查询时,需要将其用单引号括起来) 3.数据库对象的命名要能做到见名识意,并且不要超过32个字符 4.临时库表必须以tmp_为前缀并以日期为后缀,备份表必须以bak_为前缀并以日期(时间戳)为后缀 5.所有存储相同数据的列名和列类型必须一致(一般作为关联列,如果查询时关联列类型不一致会自动进行数据类型隐式转换,会造成列上的索引失效,导致查询效率降低)…
一.基础规范 (1)必须使用InnoDB存储引擎 解读:支持事务.行级锁.并发性能更好.CPU及内存缓存页优化使得资源利用率更高 (2)必须使用UTF8字符集 解读:万国码,无需转码,无乱码风险,节省空间 (3)数据表.数据字段必须加入中文注释 解读:请不要给后来维护的人挖坑 (4)禁止使用存储过程.视图.触发器.Event 解读:高并发大数据的互联网业务,架构设计思路是“解放数据库CPU,将计算转移到服务层”,并发量大的情况下,这些功能很可能将数据库拖死,业务逻辑放到服务层具备更好的扩展性,能…
一.基础规范 使用InnoDB存储引擎支持事务.行级锁.并发性能更好.CPU及内存缓存页优化使得资源利用率更高 推荐使用utf8mb4字符集无需转码,无乱码风险, 支持emoji表情以及部分不常见汉字 表.字段必须加注释方便他人理解字段意思. 不在数据库做计算 禁止使用存储过程.视图.触发器.Event. 在并发量大的情况下,这些功能很可能将数据库拖跨,业务逻辑放到服务层具备更好的扩展性,能够轻易实现“增机器就加性能” 禁止存储文件文件存储在文件系统,数据库里存URI 控制单表数量级单表记录控制…
一:基础规范 1.使用InnoDB存储引擎 支持事务.行级锁.并发性能更好.CPU及内存缓存页优化使得资源利用率更高 2.推荐使用utf8mb4字符集 无需转码,无乱码风险, 支持emoji表情以及部分不常见汉字 3.表.字段必须加注释 方便他人理解字段意思. 4.不在数据库做计算 禁止使用存储过程.视图.触发器.Event. 在并发量大的情况下,这些功能很可能将数据库拖跨,业务逻辑放到服务层具备更好的扩展性,能够轻易实现“增机器就加性能” 5.禁止存储文件 文件存储在文件系统,数据库里存URI…
MySQL支持多种列类型:数值类型.日期/时间类型和字符串(字符)类型. 数值类型 数值类型又分为整数型与小数型 整数型 下面的表显示了需要的每个整数类型的存储和范围 创建一张表 mysql> CREATE TABLE t_int ( int_1 TINYINT, int_2 SMALLINT, int_3 MEDIUMINT, int_4 INT, int_5 BIGINT); Query OK, 0 rows affected mysql> DESC t_int; +-------+---…
一. 表设计 库名.表名.字段名必须使用小写字母,“_”分割. 库名.表名.字段名必须不超过12个字符. 库名.表名.字段名见名知意,建议使用名词而不是动词. 建议使用InnoDB存储引擎. 存储精确浮点数必须使用DECIMAL替代FLOAT和DOUBLE. 建议使用UNSIGNED存储非负数值. 建议使用INT UNSIGNED存储IPV4. 整形定义中不添加长度,比如使用INT,而不是INT(4). 使用短数据类型,比如取值范围为0-80时,使用TINYINT UNSIGNED. 不建议使用…
一. 表设计 库名.表名.字段名必须使用小写字母,"_"分割. 库名.表名.字段名必须不超过12个字符. 库名.表名.字段名见名知意,建议使用名词而不是动词. 建议使用InnoDB存储引擎. 存储精确浮点数必须使用DECIMAL替代FLOAT和DOUBLE. 建议使用UNSIGNED存储非负数值. 建议使用INT UNSIGNED存储IPV4. 整形定义中不添加长度,比如使用INT,而不是INT(4). 使用短数据类型,比如取值范围为0-80时,使用TINYINT UNSIGNED.…
规范总结 所有数据库对象名称必须使用小写字母并用下划线分割 所有数据库对象名称禁止使用 MySQL 保留关键字[设计表后逐一排查] 所有表必须使用 Innodb 存储引擎,数据库和表的字符集统一使用 UTF8 所有表和字段都需要添加注释 禁止在数据库中存储图片,文件等大的二进制数据 [通常存储于文件服务器,数据库只存储文件地址信息] 优先选择符合存储需要的最小的数据类型[能用整型就不要用字符串][ip字符串转换成整型] 避免使用text,blob类型,会大大降低SQL执行效率 避免使用ENUM类…
此篇文章是学习MySQL技术整理的,不足之处还望指教,不胜感激. 数据库基本规范涉及数据库命名规范.数据库索引设计规范.数据库基本设计规范.数据库字段设计规范.数据库SQL开发规范.数据库操作行为规范 数据库命名规范 1. 所有数据库对象名称禁止使用MySQL关键字 2. 所有数据库对象名称必须小写 3. 名称遵循长名称规则,要做到见名识意,最长不超过32位 4. 临时表以tmp_开头,备份表以bak_开头,并均要以时间戳结尾 数据库基本设计规范 1. 所有表必须使用Innodb存储引擎 (5.…