数据库
文章平均质量分 79
数据库
寻道的 Programmer
无根浮盈空欢喜,未悟真经套中人
展开
-
Oracle学习记录
oracle学习过程中记录的一些知识点,包括sqlplus一些命令、角色、DML、DCL、DDL、数据字典、表空间、函数。1. sys超级管理员,权限最高,角色dba2. system系统管理员,角色dbaoper3. scott普通用户4. 显示当前用户show user5. 切换用户connect 用户名/密码6. editedit d:/tex原创 2012-03-16 22:03:33 · 2544 阅读 · 1 评论 -
INSERT ... ON DUPLICATE KEY UPDATE
本文来自:高爽|Coder,原文地址:http://blog.csdn.net/ghsau/article/details/23557915,转载请注明。 向数据库插入记录时,有时会有这种需求,当符合某种条件的数据存在时,去修改它,不存在时,则新增,也就是insertOrUpdate操作。这种控制可以放在业务层,也可以放在数据库层,大多数数据库都支持这种需求,如Oracle的merge翻译 2014-04-13 22:05:37 · 70587 阅读 · 15 评论 -
Nested-Loop Join Algorithms
MySQL使用嵌套循环算法来实现多表之间的联接。Nested-Loop Join Algorithms一个简单的嵌套循环联接(NLJ)算法,循环从第一个表中依次读取行,取到每行再到联接的下一个表中循环匹配。这个过程会重复多次直到剩余的表都被联接了。 假设表t1、t2、t3用下面的联接类型进行联接:Table Join Typet1 ranget2 reft3翻译 2015-03-06 14:16:43 · 8607 阅读 · 2 评论 -
MySQL从5.5升级到5.6,TIMESTAMP的变化
前言前段时间,系统MySQL从5.5升级到了5.6,系统出现了大量的异常。大部分异常引起原因是由于TIMESTAMP的行为发生了变化。TIMESTAMP在MySQL5.5中的行为第一个未设置默认值的TIMESTAMP NOT NULL字段隐式默认值: CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP后面未设置默认值的TIMESTAMP NOT NULL原创 2015-05-10 23:47:32 · 15934 阅读 · 2 评论 -
如何实现按距离排序、范围查找
简介现在几乎所有的O2O应用中都会存在“按范围搜素、离我最近、显示距离”等等基于位置的交互,那这样的功能是怎么实现的呢?本文提供的实现方式,适用于所有数据库。实现为了方便下面说明,先给出一个初始表结构,我使用的是MySQL:CREATE TABLE `customer` ( `id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '自增主键原创 2016-01-30 11:58:03 · 53003 阅读 · 8 评论 -
MySQL字符集不一致导致索引失效
两个表join查询,却不走连接条件的索引。当索引无问题,sql也无问题时,就可以去看看这两个表的字符集是否一致,这是我耗费一个下午得出来的经验教训。原创 2016-08-02 20:26:41 · 5667 阅读 · 0 评论 -
探究InnoDB可重复读
在RC(Read Committed)和RR(Repeatable Read)两种事务隔离级别下,InnoDB存在两种数据读取方式:快照读(Snapshot Read)故名思意,快照读读取的都是快照数据,快照怎么来,在InnoDB引擎下是基于undo log,那undo log又是什么?举例说明,假设有这样一个表:-- 表结构CREATE TABLE `innodb_test原创 2017-10-17 11:15:35 · 3378 阅读 · 2 评论