- 博客(15)
- 资源 (155)
- 收藏
- 关注
转载 MySQL-索引结构详解
推荐参考:http://blog.codinglabs.org/articles/theory-of-mysql-index.htmlInnoDB的主键索引(Primary Key)是Cluster形式的(聚簇索引)。InnoDB的非主键索引(Secondary Index)是普通的B+Tree索引。两种索引在Root Node和Branch Node是一样的,在Leaf
2014-02-18 00:34:20 1173
转载 MySQL中的Rows,Row_format以及MyISAM和InnoDB的一点区别
前面说到的count(*)的数字MyISAM是存储在一个地方就是表的Rows中,从下面的话中我们可以看出MyISAM存的是一个准确的数字,而InnoDB则存储的是粗略的数字。RowsThe number of rows in the table. For nontransactional tables, this number isalways accurate. For
2014-02-18 00:32:56 2057
转载 详解Mysql中InnoDB和MyISAM两种表类型的区别1
众所周知,InnoDB和MyISAM是mysql中最常用的两种表的类型,MyISAM是默认的类型。它们的区别很多,主要是侧重点不同,InnoDB支持一些高级处理,而MyISAM强调性能,当然强调性能的同时就要牺牲一些东西了。 现在对比一下统计行数的语句(select count(*)|(1)|(Primary Key)),在Mysql中新建两个表,分别是MyISAM和InnoDB类型的:
2014-02-18 00:31:42 1024
转载 Mysql的row_format
在mysql中, 若一张表里面不存在varchar、text以及其变形、blob以及其变形的字段的话,那么张这个表其实也叫静态表,即该表的row_format是fixed,就是说每条记录所占用的字节一样。其优点读取快,缺点浪费额外一部分空间。若一张表里面存在varchar、text以及其变形、blob以及其变形的字段的话,那么张这个表其实也叫动态表,即该表的row_format是dynam
2014-02-18 00:23:57 900
转载 MySQL DATE_SUB() 函数
定义和用法DATE_SUB() 函数从日期减去指定的时间间隔。语法DATE_SUB(date,INTERVAL expr type)date 参数是合法的日期表达式。expr 参数是您希望添加的时间间隔。type 参数可以是下列值:Type 值MICROSECONDSECONDMINUTE
2014-02-18 00:21:08 1776 1
转载 谈谈数据库的字段设计的几个心得
数据库的字段设计有很多细节性的技巧,下面将过去在开发中体会到经验整理出来,做个备忘。tinyint 是-128到128 。当属性设置为unsigned的时候。最大值就是255了。现在知道为什么需要设置为unsigned属性了。原来是为了最大限度的使用给予的存储空间。如果不设置。那么假如你的值都是正数的。那么-128这一百多个数字就相当于是浪费了。tinyint会自动设置为tinyint(3
2014-02-18 00:19:19 2906
转载 索引的填充因子
创建索引时,可以指定一个填充因子,以便在索引的每个叶级页上留出额外的间隙和保留一定百分比的空间,供将来表的数据存储容量进行扩充和减少页拆分的可能性。填充因子的值是从 0 到 100 的百分比数值,指定在创建索引后对数据页的填充比例。值为 100 时表示页将填满,所留出的存储空间量最小。只有当不会对数据进行更改时(例如,在只读表中)才会使用此设置。值越小则数据页上的空闲空间越
2014-02-18 00:18:36 2121
转载 InnoDBd的auto_increment以及innodb_autoinc_lock_mode
InnoDB的auto_increment,类似oracle的sequence,可以自动增长,通常用于主键;auto_increment必须为索引列,其值一旦分配就不能随着相应sql的回滚而回退; 当InnoDB表创建auto_increment列时,其数据字典会分配一个auto-increment计数器,在内存中操作维护;第一次向表插入数据时,InnoDB会执行如下语句查看列当前
2014-02-18 00:15:29 1367
转载 InnoDB表与索引结构相关知识整理
MySQL把表的数据词典信息以.frm文件的形式存在数据库目录里,所有MySQL存储引擎都是这样的。但是每个InnoDB表在表空间内的InnoDB内部数据词典里也有它自己的条目。当MySQL移除表或数据库,它不得不删除.frm文件和InnoDB数据词典内的相应条目。这就是为什么你不能在数据库之间简单地移动.frm文件来移动InnoDB表。1. 聚集索引和第二索引每个InnoDB有一
2014-02-18 00:12:28 678
转载 MySQL replace into 用法
在向表中插入数据的时候,经常遇到这样的情况:1. 首先判断数据是否存在; 2. 如果不存在,则插入;3.如果存在,则更新。在 SQL Server 中可以这样处理: if not exists (select 1 from t where id = 1) insert into t(id, update_time) values(1, getdate())
2014-02-18 00:10:44 573
转载 mysql "ON DUPLICATE KEY UPDATE" 语法
如果在INSERT语句末尾指定了ON DUPLICATE KEY UPDATE,并且插入行后会导致在一个UNIQUE索引或PRIMARY KEY中出现重复值,则在出现重复值的行执行UPDATE;如果不会导致唯一值列重复的问题,则插入新行。 例如,如果列 a 为 主键 或 拥有UNIQUE索引,并且包含值1,则以下两个语句具有相同的效果: 1INSERT
2014-02-17 23:58:51 680
转载 MySQL自定义排序函数FIELD()
MySQL可以通过field()函数自定义排序,格式:field(value,str1,str2,str3,str4),value与str1、str2、str3、str4比较,返回1、2、3、4,如遇到null或者不在列表中的数据则返回0. 这个函数好像Oracle中没有专门提供(也可能是我没有用到),不过自己实现这样一个函数还是比较简单的。mysql> select * from drive
2014-02-12 19:58:40 788
转载 MySQL的Join使用
在MySQL(以5.1为例)中,表连接的语法可以参见MySQL官方手册:MySQL官方手册-JOIN在查询中,连接的语法类似[sql] view plaincopySELECT select_expr FROM table_references table_references(对表的引用)的定义如下(也可以看成连接
2014-02-12 01:53:59 679
转载 MYSQL中 ENUM 类型
MYSQL中 ENUM 类型的详细解释ENUM类型ENUM 是一个字符串对象,其值通常选自一个允许值列表中,该列表在表创建时的列规格说明中被明确地列举。在下列某些情况下,值也可以是空串("") 或 NULL:如果将一个无效值插入一个 ENUM (即,一个不在允许值列表中的字符串),空字符串将作为一个特殊的错误值被插入。事实上,这个字符串有别于一个"普通的"空字符串,
2014-02-12 01:32:55 2468
转载 mysql的tmp_table_size和max_heap_table_size
先说下tmp_table_size吧:它规定了内部内存临时表的最大值,每个线程都要分配。(实际起限制作用的是tmp_table_size和max_heap_table_size的最小值。)如果内存临时表超出了限制,MySQL就会自动地把它转化为基于磁盘的MyISAM表,存储在指定的tmpdir目录下,默认:mysql> show variables like "tmpdir";
2014-02-12 00:24:59 2014
02_IEACS_LampOnOff.rar
2011-09-08
C++ GUI Programming with Qt4, 2nd Edition_SampleChapter.pdf
2011-08-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人