
DB
onyas
这个作者很懒,什么都没留下…
展开
-
为什么推荐InnoDB引擎使用自增主键?
原文地址:http://www.ywnds.com/?p=8735在使用InnoDB存储引擎时,如果没有特别的需要,请永远使用一个与业务无关的自增字段作为主键,除非高并发写入操作可能需要衡量自增主键,后面会讲。经常看到有帖子或博客讨论主键选择问题,有人建议使用业务无关的自增主键,有人觉得没有必要,完全可以使用如学号或身份证号这种唯一字段作为主键。不论支持哪种论点,大多数论据都是业务转载 2017-07-29 12:01:54 · 9251 阅读 · 4 评论 -
InnoDB数据库死锁
目录场景描述问题分析解决方法延伸:数据库死锁数据库死锁例子 正文回到顶部场景描述在update表的时候出现DeadlockLoserDataAccessException异常 (Deadlock found when trying to get lock; try restarting transaction...)。回到顶部问题转载 2016-12-23 22:55:32 · 749 阅读 · 0 评论 -
mysql乐观锁总结和实践
mysql数据库乐观锁悲观锁 上一篇文章《MySQL悲观锁总结和实践》谈到了MySQL悲观锁,但是悲观锁并不是适用于任何场景,它也有它存在的一些不足,因为悲观锁大多数情况下依靠数据库的锁机制实现,以保证操作最大程度的独占性。如果加锁的时间过长,其他用户长时间无法访问,影响了程序的并发访问性,同时这样对数据库性能开销影响也很大,特别是对长事务而言,这样的开销往往无法承受。所以与悲转载 2016-08-23 17:32:56 · 326 阅读 · 0 评论 -
mysql悲观锁总结和实践
最近学习了一下数据库的悲观锁和乐观锁,根据自己的理解和网上参考资料总结如下: 悲观锁介绍(百科):悲观锁,正如其名,它指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)修改持保守态度,因此,在整个数据处理过程中,将数据处于锁定状态。悲观锁的实现,往往依靠数据库提供的锁机制(也只有数据库层提供的锁机制才能真正保证数据访问的排他性,否则,即使在本系统中实现了加锁机制转载 2016-08-23 17:32:19 · 374 阅读 · 0 评论 -
分页查询优化
方式1: select * from table order by id limit m, n; m越大,查询的性能会越低(越后面的页数,查询性能越低),因为MySQL同样需要扫描过m+n条记录。 方式2: select * from table where id > #max_id#转载 2016-07-01 17:52:13 · 1058 阅读 · 0 评论 -
哪些情况下索引会失效?
哪些情况下索引会失效?转载 2016-06-14 22:47:10 · 5585 阅读 · 0 评论 -
MySQL中如何查看“慢查询”,如何分析执行SQL的效率?
MySQL中如何查看“慢查询”,如何分析执行SQL的效率?转载 2016-06-14 22:42:48 · 3090 阅读 · 0 评论 -
MySql 里的IFNULL、NULLIF和ISNULL用法
MySql 里的IFNULL、NULLIF和ISNULL用法转载 2016-01-22 16:12:46 · 622 阅读 · 0 评论 -
mysql 关键字-保留字
Mysql 关键字-保留字2008-02-01 10:51 ADDALLALTERANALYZEANDASASCASENSITIVEBEFOREBETWEENBIGINTBINARYBLOBBO转载 2015-06-12 12:07:40 · 597 阅读 · 0 评论 -
关于MySQL的wait_timeout连接超时问题报错解决方案
在说这个错误之前先说明我的项目是通过Hibernate来进行数据库操作的关于MySQL连接超时问题,估计很多人都遇到过:大致情形都是这样,开发测试时程序都是正常的,一到第二天就出先莫名错误,比如在我的项目中就是定时任务执行,每天凌晨一点执行一次,也就是24小时每隔24小时执行,远远超出了8小时如果你刚好在数据库超时的第一时间内看到日志记录的话那么,第一次超时发生的错误就是这样的:转载 2015-07-30 09:26:06 · 2925 阅读 · 0 评论 -
Mysql autoReconnect 的问题
MySQL官方不推荐使用autoReconnect=true,参见 http://bugs.mysql.com/bug.php?id=5020 需要另外找别的办法来解决超过8小时,链接断开的问题。 由于问题产生的根本原因在于服务到数据库的连接长时间没活动,既然重新连接的办法无效,就可以尝试另外一种办法,就是反空闲。 自己写一个线程来反空闲的话,比较麻烦。 最后在网上找到一个办法转载 2015-07-30 09:39:00 · 3745 阅读 · 0 评论 -
Mysql函数INSTR、LOCATE、POSITION VS LIKE
Mysql函数INSTR、LOCATE、POSITION VS LIKE转载 2017-02-06 22:24:04 · 820 阅读 · 0 评论 -
mysql查询在一张表存在而另外一张表的不存在的写法
mysql查询在一张表不在另外一张表的记录转载 2017-02-06 22:19:28 · 7216 阅读 · 0 评论 -
漫谈MySQL中的事务及其实现
http://www.cnblogs.com/zhiqian-ali/p/5668199.html最近一直在做订单类的项目,使用了事务。我们的数据库选用的是MySQL,存储引擎选用innoDB,innoDB对事务有着良好的支持。这篇文章我们一起来扒一扒事务相关的知识。为什么要有事务?事务广泛的运用于订单系统、银行系统等多种场景。如果有以下一个场景:A用户和B用户是银行的转载 2017-07-30 13:34:17 · 484 阅读 · 0 评论 -
MYSQL查询重复记录的方法
MYSQL查询重复记录的方法很多,下面就为您介绍几种最常用的MYSQL查询重复记录的方法,希望对您学习MYSQL查询重复记录方面能有所帮助。1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断select * from people where peopleId in (select peopleId from people group by peopleI转载 2017-07-07 17:09:47 · 673 阅读 · 0 评论 -
mysql导出数据
如果是对MySQL整个表数据导出,可以参照文章:http://www.crazyant.net/1355.html然而也会遇到的场景是,需要执行一个SQL语句,然后将SQL语句的结果输出到文件;方法一:使用MySQL的select * into outfile ‘/tmp/rs.txt’ from tb_name句型这是个不可行的方法;举个例子,执行以下的SQL语句原创 2017-06-21 20:13:14 · 1062 阅读 · 0 评论 -
mysql float统计
select id,price,round(price) from room_price where price != round(price);原创 2017-06-19 09:59:22 · 1229 阅读 · 0 评论 -
Innodb中的事务隔离级别和锁的关系
Innodb中的事务隔离级别和锁的关系转载 2017-04-06 15:52:17 · 513 阅读 · 0 评论 -
使用LiquiBase管理数据库的迁移
使用LiquiBase管理数据库的迁移转载 2017-03-24 15:10:47 · 8927 阅读 · 1 评论 -
Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLTransactionRollbackException: Deadlock found when tryin
Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLTransactionRollbackException: Deadlock found when tryin原创 2017-01-23 20:18:36 · 50572 阅读 · 1 评论 -
think in java interview-高级开发人员面试宝典(七)
上两周研发任务太紧了,所以担搁了一下,我们继续我们的面试之旅。下面是一个基于图书系统的15道SQL问答,供大家参考问题描述:本题用到下面三个关系表:CARD 借书卡。 CNO 卡号,NAME 姓名,CLASS 班级BOOKS 图书。 BNO 书号,BNAME 书名,AUTHOR 作者,PRICE 单价,QUANTITY 库存册数 BORR转载 2017-02-07 14:35:16 · 680 阅读 · 0 评论 -
think in java interview-高级开发人员面试宝典(六)
原文地址:http://blog.youkuaiyun.com/lifetragedy/article/details/9935699写了这么多Java基础,来点SQL吧!一般面试时考SQL,主要就是考你“统计分析”这一块,下面我们来看面试官经常采用的手段。由4张简单的不能再简单的表,演变出50道SQL哈哈哈哈,够这个面试官面个15,20个人,不带重复的转载 2017-02-07 14:32:25 · 849 阅读 · 0 评论 -
Mysql Explain 详解
Mysql Explain 详解转载 2016-01-22 10:01:48 · 556 阅读 · 0 评论 -
关于mysql 索引自动优化机制: 索引选择性(Cardinality:索引基数)
关于mysql 索引自动优化机制: 索引选择性(Cardinality:索引基数)转载 2016-01-22 14:24:23 · 9928 阅读 · 0 评论 -
SQL删除重复数据只保留一条
用SQL语句,删除掉重复项只保留一条在几千条记录里,存在着些相同的记录,如何能用SQL语句,删除掉重复的呢1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 select * from people where peopleId in (select peopleId from people group by peopleId having count转载 2013-10-29 23:40:47 · 1713 阅读 · 0 评论 -
如何建立索引,提高查询速度
人们在使用SQL时往往会陷入一个误区,即太关注于所得的结果是否正确,而忽略了不同的实现方法之间可能存在的 性能差异,这种性能差异在大型的或是复杂的数据库环境中(如联机事务处理OLTP或决策支持系统DSS)中表现得尤为明 显。笔者在工作实践中发现,不良的SQL往往来自于不恰当的索引设计、不充份的连接条件和不可优化的where子句。在对 它们进行适当的优化后,其运行速度有了明显地提高!下面转载 2013-09-24 08:50:49 · 844 阅读 · 0 评论 -
如何加快sql查询速度
如何加快sql查询速度?如何加快查询速度?1、升级硬件 2、根据查询条件,建立索引,优化索引、优化访问方式,限制结果集的数据量。3、扩大服务器的内存4、增加服务器CPU个数5、对于大的数据库不要设置数据库自动增长,它会降低服务器的性能6、在查询Select语句中用Where字句限制返回的行数,避免表扫描,如果返回不必要的数据,浪费了服务器的I/O资源,加重了网转载 2013-09-24 08:15:31 · 2000 阅读 · 0 评论 -
SQL 左外连接,右外连接,全连接,内连接 4种连接的区别 .
连接条件可在FROM或WHERE子句中指定,建议在FROM子句中指定连接条件。WHERE和HAVING子句也可以包含搜索条件,以进一步筛选连接条件所选的行。 连接可分为以下几类: 内连接。(典型的连接运算,使用像 = 或 相等连接和自然连接。内连接使用比较运算符根据每个表共有的列的值匹配两个表中的行。例如,检索 students 和 courses 表中学生标识号相同的所有转载 2013-09-24 08:09:50 · 1042 阅读 · 0 评论 -
分组查询后得到每组中的第一条数据
表clgl_clbzqk xh,dwxh,clbzhdrqxh表示 序号 dwxh表示单位序号 clbzhdrq表示核定时间xh是主键,目的是按dwxh分组,然后得到最近的一次记录但是group by 不能完成此功能可以用下面方法:select * from clgl_clbzqk xwhere xh = (select top 1 xh fr原创 2013-09-13 11:35:50 · 6955 阅读 · 2 评论 -
SELECT INTO 和 INSERT INTO SELECT 两种表复制语句
Insert是T-sql中常用语句,Insert INTO table(field1,field2,...) values(value1,value2,...)这种形式的在应用程序开发中必不可少。但我们在开发、测试过程中,经常会遇到需要表复制的情况,如将一个table1的数据的部分字段复制到table2中,或者将整个table1复制到table2中,这时候我们就要使用SELECT INTO 和 I转载 2013-08-06 15:10:38 · 587 阅读 · 0 评论 -
各种数据库分页查询语句
一、 MySQL 数据库分页查询MySQL数据库实现分页比较简单,提供了LIMIT函数。一般只需要直接写到sql语句后面就行了。LIMIT子句可以用来限制由SELECT语句返回过来的数据数量,它有一个或两个参数,如果给出两个参数, 第一个参数指定返回的第一行在所有数据中的位置,从0开始(注意不是1),第二个参数指定最多返回行数。例如:select * from转载 2013-06-06 18:04:41 · 1400 阅读 · 0 评论 -
查询间隔时间的Sql语句
---求相差天数 select datediff(day,'2004-01-01',getdate()) --1.一个月第一天的 SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) --2.本周的星期一 SELECT DATEADD(wk, DATEDIFF(wk,0,g转载 2013-07-24 14:05:06 · 6230 阅读 · 0 评论 -
sqlserver把行转成列
sqlserver把行转成列在我们编码中是经常遇到的我做一个小例子大家看一下 1 --创建一个表 2 create table PayPhoneMoney 3 ( 4 id int identity(1,1), 5 userName Nvarchar(20), 6 payType nvarchar(20), 7 money decimal, 8转载 2013-07-24 14:02:29 · 1339 阅读 · 0 评论 -
PLSQL性能优化方法
1、选择最有效率的表名顺序(只在基于规则的优化器中有效):ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表driving table)将被最先处理,在FROM子句中包含多个表的情况下,就选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersection table)作为基础表, 交叉表是指那个被其他表转载 2013-07-24 17:21:25 · 1407 阅读 · 1 评论 -
sql递归查询问题
在工作中遇到一个问题,是需要sql递归查询的.不懂,于是到csdn上去问,那里的效率真是非常高,我以前也没在上面问过问题.问题描述:我有一个表结构如下:id upperid1 23 24 15 3具体层次不知道,我想用递归sql语句把所有属于某个upperid的数据,包括它的子树,都读出去,请问应该子怎么写? 比转载 2013-10-29 23:25:38 · 1002 阅读 · 0 评论 -
java.net.ConnectException: Connection refused: connect 完美解决(SQLserver2000)【转】 .
SQL SERVER 不能连接的完美解决方案推荐直接访问博客的版面,比这里排版效果好! http://blog.youkuaiyun.com/java2000_net/archive/2008/04/05/2252640.aspx本文收录了不能连接SQL Server ,报 The Network Adapter could not establish the connection 异常的所有遇到转载 2014-03-07 15:05:17 · 2499 阅读 · 0 评论 -
MySQL优化器:index merge介绍
在MySQL官方手册上,关于index merge的介绍非常非常少。甚至还有不少误导的地方,这次把5.1版本关于此类优化处理的代码细看了一遍,以案例的方式介绍了各种实用index merge访问类型的SQL。后续的还会继续介绍index merge实现的主要数据结构,以及成本评估。目录 [hide]1. 什么是index merge1.1 index mer转载 2015-10-28 21:51:50 · 4067 阅读 · 0 评论 -
[慢查优化]建索引时注意字段选择性 & 范围查询注意组合索引的字段顺序
写在前面的话:之前曾说过“不要求每个人一定理解 联表查询(join/left join/inner join等)时的mysql运算过程”,但对于字段选择性差意味着什么,组合索引字段顺序意味着什么,要求每个人必须了解;重复上一次的话:把mysql客户端(如SQLyog,如HeidiSQL)放在桌面上,时不时拿出来 explain 一把,这是一种美德!确保亲手查过SQL的执行计转载 2015-10-28 21:18:01 · 2566 阅读 · 0 评论 -
内连接、左外连接、右外连接、交叉连接区别
http://blog.youkuaiyun.com/cnham/archive/2008/06/25/2584936.aspx 在之前,我对MSSQL中的内连接和外连接所得出的数据集不是很清楚。这几天重新温习了一下SQL的书本,现在的思路应该是很清楚了,现在把自己的理解发出来给大家温习下。希望和我一样对SQL的连接语句不太理解的朋友能够有所帮助。(发这么菜的教程,各位大大们别笑话偶了,呵:D ) 有两个转载 2015-10-11 09:41:20 · 682 阅读 · 0 评论 -
数据库的最简单实现
作者: 阮一峰日期: 2014年7月 4日所有应用软件之中,数据库可能是最复杂的。MySQL的手册有3000多页,PostgreSQL的手册有2000多页,Oracle的手册更是比它们相加还要厚。但是,自己写一个最简单的数据库,做起来并不难。Reddit上面有一个帖子,只用了几百个字,就把原理讲清楚了。下面是我根据这个帖子整理的内容。一、数据转载 2015-10-08 10:50:59 · 383 阅读 · 0 评论