mysql数据库设计字符类型及长度】的更多相关文章

1.数字类型 小数的我就不聊了,因为有小数点的一般都是用字符串保存.关于整数,有几种可以选TINYINT.SMALLINT.MEDIUMINT.INT和BIGINT,分别占1.2.4.8字节.如果无符号,则其最大为255.65535.16777215.4294967295和18446744073709551615.一般年龄呀身高呀用tinyint就足够了,应该合理使用,保证字节不会被浪费. 然后我说一下长度,就是int(多少),其实mysql保存int的时候一般默认为11,这个我们设不设置都没什…
MySQL数据库设计总结   规则1:一般情况可以选择MyISAM存储引擎,如果需要事务支持必须使用InnoDB存储引擎. 注意:MyISAM存储引擎 B-tree索引有一个很大的限制:参与一个索引的所有字段的长度之和不能超过1000字节.另外MyISAM数据和索引是分开,而InnoDB的数据存储是按聚簇(cluster)索引有序排列的,主键是默认的聚簇(cluster)索引,因此MyISAM虽然在一般情况下,查询性能比InnoDB高,但InnoDB的以主键为条件的查询性能是非常高的. 规则2:…
2 MySQL 数据库设计的"奥秘" [主题]逻辑设计:数据类型与 Schema 所谓"万丈高楼平地起",一个稳固的建筑离不开扎实的基础.同样,良好的的「逻辑设计」和「物理设计」是数据库高性能的基石. 本文的主要内容总结了一张图,你可以点击查看. 我们需要根据系统需要执行的 SQL 语句设计 schema,这往往权衡各种因素. [idea]瞧!权衡和取舍不仅仅在系统设计.方案设计时处处体现其价值,在数据库表设计也同样如此. 举个例子,反范式设计可以加快某些类型查询,…
Mysql 数据库date, datetime类型设置0000-00-00默认值报错问题 现象:MySQL5.7版本之后,date, datetime类型设置默认值"0000-00-00",出现异常:Invalid default value for 'time' 原因:在命令行窗口查看当前的sql_mode配置: select @@sql_mode; 结果如下: ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_…
mysql数据库设计原则: 必须使用InnoDB存储引擎 解读:支持事务.行级锁.并发性能更好.CPU及内存缓存页优化使得资源利用率更高 禁止使用存储过程.视图.触发器.Event 解读:高并发大数据的互联网业务,架构设计思路是“解放数据库CPU,将计算转移到服务层”,并发量大的情况下,这些功能很可能将数据库拖死,业务逻辑放到服务层具备更好的扩展性,能够轻易实现“增机器就加性能”.数据库擅长存储与索引,CPU计算还是上移吧 表必须有主键,例如自增主键 解读:a)主键递增,数据行写入可以提高插入性…
最近遇到一个问题,需要把java中的日期类型存放为MySQL数据库的日期类型,两个日期之间需要进行转化才能进行存储,转化代码如下: package com.alphajuns.demo1; import java.util.Date; public class Demo1 { public static void main(String[] args) { // 返回系统当前时间 Date date = new Date(); // 将当前时间转化为sql时间 java.sql.Date tra…
flask修改数据库字段的类型和长度 ​ 在将models中的字段的db.String(256)修改为db.String(1024)后,执行migrate和upgrade操作后,发现数据库并没有更新,网上查阅资料后,解决方法如下: 打开env.py文件(文件路径为:migrations/env.py) 找到run_migrations_online函数下的context.configure,在括号中添加两行配置项 ​ compare_type=True, ​ compare_server_def…
上述表格中的数值类型都是定长的,也就是说,无论你存的数值是多少,多大或者多小,占用的存储字节大小都是固定的.例如,设置int(1),虽然M值是1个字符,但是它所占用的空间大小永远都是4个字节的大小,换句话说就是,你可以存入有符号整型从-2 147 483 648到2 147 483 647包括这两个数的中间任何一个数.int(1)和int(11)占用的是4个字节,可以存入上述这些数,tinyint(1)和tinyint(4)占用的是1个字节,可以存入从-128到127的数. 设置tinyint(…
关于字段的选择其实很多地方都有进行详细的介绍,我这里只写一下我在使用过程中的心得感受.如果想要全面的了解的话,大家可以去看高性能MYSQL这一本书籍,里面有一章节介绍的特别全面,基本涉及MYSQL中全部的字段的介绍. 我这里给大家介绍的就一些常用的字段,例如:int.float.double. decimal.varchar.char. date.datetime等八种常用的类型. 在数据库设计过程中我们要本着够用的原则,如果一味的把数据字段范围设为最大或者默认值的话,会导致存储空间大量的浪费.…
本规范适用于mysql 5.1或以上版本使用 数据库范式 第一范式(1NF)确保每列保持原子性 第一范式(1NF):数据库表的每一列都是不可分割的原子数据项,而不能是集合,数组,记录等非原子数据项. 例如: 体重是每个学生的属性,在数据库设计的时候,不会将“体重”拆分成两个字段保存,所以建立一个“学生表”(学生ID.姓名.身高.体重): 第二范式(2NF)确保表中的每列都和主键相关 满足第二范式(2NF)必须先满足第一范式(1NF),第二范式(2NF)要求实体的属性完全依赖于主关键字.如果存在不…