MySql基础笔记(三)其他重要的事情
其他重要的事情
一)索引管理优化
1.把多条alter语句整合为一条
2.去除重复的索引
1)当一个索引的最左边部分包含到其他索引中时,被认定为重复索引
create table user(
id int primary key auto_increment,
name varchar(88),
address varchar(99),
age tinyint,
index m1 (name, address),
index m2 (name, age)
);
2)主键不需要额外添加为索引
3.删除不用的索引
二)数据类型相关的改进
1.BIGINT和INT
在auto_increment列上把BIGINT改为int unsigned.这样能显著减少索引所需要的空间。
2.DATETIME和TIMESTAMP
datetime:占用8字节,支持所有可能的时间日期值。
timestamp:占用4字节,记录的时间是纪元值,默认值为0切不能为null
3.ENUM
enum类型适合存储静态代码值,用一个字节存储了255个不同的值
gender ENUM('Male','Female') NOT NULL
4.NULL 和 NOT NULL
能定义为not null就定义为not null
5.IP地址
IP4 地址应该被定义为INT UNSIGNED类型
IP6用BINARY(16)
6.MD5
用char(32)存储MD5
三)简化SQL语句
MySql基础笔记(三)其他重要的事情的更多相关文章
- MYSQL基础笔记(三)-表操作基础
		数据表的操作 表与字段是密不可分的. 新增数据表 Create table [if not exists] 表名( 字段名 数据类型, 字段名 数据类型, 字段n 数据类型 --最后一行不需要加逗号 ... 
- MYSQL基础笔记(四)-数据基本操作
		数据操作 新增数据:两种方案. 1.方案一,给全表字段插入数据,不需要指定字段列表,要求数据的值出现的顺序必须与表中设计的字段出现的顺序一致.凡是非数值数据,到需要使用引号(建议使用单引号)包裹. i ... 
- MYSQL基础笔记(二)-SQL基本操作
		SQL基本操作 基本操作:CRUD,增删改查 将SQL的基本操作根据操作对象进行分类: 1.库操作 2.表操作 3.数据操作 库操作: 对数据库的增删改查 新增数据库: 基本语法: Create da ... 
- MYSQL基础笔记(一)
		关系型数据库概念: 1.什么是关系型数据库? 关系型数据库:是一种建立在关系模型(数学模型)上的数据库 关系模型:一种所谓建立在关系上的模型. 关系模型包含三个方面: 1.数据结构:数据存储的问题,二 ... 
- MySQL基础(三)——约束
		MySQL基础(三)--约束 约束是在表上强制执行的数据校验规则,主要用于维护表中数据的完整性以及当数据之间有以来关系时,保护相关的数据不会被删除. 根据约束对列的限制,可以划分为:单列约束(只约束一 ... 
- MYSQL基础笔记(六)-  数据类型一
		数据类型(列类型) 所谓数据烈性,就是对数据进行统一的分类.从系统角度出发时为了能够使用统一的方式进行管理,更好的利用有限的空间. SQL中讲数据类型分成三大类:1.数值类型,2.字符串类型和时间日期 ... 
- MYSQL基础笔记(五)- 练习作业:站点统计练习
		作业:站点统计 1.将用户的访问信息记录到文件中,独占一行,记录IP地址 <?php //站点统计 header('Content-type:text/html;charset=utf-8'); ... 
- MYSQL学习笔记三:日期和时间函数
		MYSQL学习笔记三:日期和时间函数 1. 获取当前日期的函数和获取当前时间的函数 /*获取当前日期的函数和获取当前时间的函数.将日期以'YYYY-MM-DD'或者'YYYYMMDD'格式返回 */ ... 
- MySql学习笔记三
		MySql学习笔记三 4.DML(数据操作语言) 插入:insert 修改:update 删除:delete 4.1.插入语句 语法: insert into 表名 (列名1,列名2,...) val ... 
- Mysql基础(三):MySQL基础数据类型、完整性约束、sql_mode模式
		目录 2.MySQL基础数据类型.完整性约束.sql_mode模式 1. MySQL常用数据类型 2. 完整性约束 3. MySQL的sql_mode模式说明以及设置 2.MySQL基础数据类型.完整 ... 
随机推荐
- ajax----发送异步请求的步骤
			1)获取(创建)Ajax对象:获取XMLHttpRequest对象2)创建请求:调用xhr的open方法3)在发送请求之前需要设置回调函数:绑定指定xhr的onreadystatechange事件4) ... 
- python 自动获取手机短信验证码
			需要一个有权限的 APK 在手机实时存储短信到手机内存 /sdcard/smslog.txt 里(外部SD卡也可以知道能通过adb命令访问到): /***** ...... try {long tim ... 
- HBase describe table 参数说明
			创建user表 > create 'dimensoft:user', 'info' 查看表结构 > describe 'dimensoft:user' DESCRIPTION 'dimen ... 
- Web.Config引入配置ConfigSource
			1.配置文件要和Config文件通一个项目 2.注意路径的写法 3.appSettings和connectionStrings等都可以设置configSource 4.这样发布到不同的环境的时候,改动 ... 
- FormsAuthenticationTicket
			using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ... 
- mysql分组(五)
			MySQL GROUP BY 语句 GROUP BY 语句根据一个或多个列对结果集进行分组. 在分组的列上我们可以使用 COUNT, SUM, AVG,等函数. GROUP BY 语法 SELECT ... 
- 跨域资源共享 CORS 详解(转自阮一峰博客)
			CORS是一个W3C标准,全称是"跨域资源共享"(Cross-origin resource sharing). 它允许浏览器向跨源服务器,发出XMLHttpRequest请求,从 ... 
- Python_list部分功能介绍
			x.append():在列表尾部添加一个元素 x.clear():把列表清空 x.count():判断某个元素出现的次数 x.extend():合并两个列表,或者一个元组 x.index():获取元素 ... 
- LVM分区无损增减
			http://www.361way.com/change-lvm-size/1792.html 
- Codeforces 219E Parking Lot  线段树
			Parking Lot 线段树区间合并一下, 求当前要占的位置, 不包括两端点的写起来方便一点. #include<bits/stdc++.h> #define LL long long ... 
