
SQL
ZDX_Y
记录下学习的点滴和感悟
展开
-
带参数的存储过程
来看看对存储过程的定义:存储过程存储在数据库内,是一组预先编译好的T-SQL代码,完成特定的功能。可有应用程序通过一个调用执行,并且允许用户声明变量,有条件执行以及其它强大的编程功能。系统的存储过程以sp_开头,扩展的存储过程以xp_开头,自定义不要使用。我理解到的优点:1.提高数据库执行速度。存储过程只在最初的时候编译即可,以后每次执行都不需要重新编译。存储过程创建后,它的名字就存储在系统表原创 2016-05-26 19:45:20 · 1262 阅读 · 0 评论 -
sql还原备份数据
show databases;create database dbname;use dbname;//这一步是为了解决MySQL数据库乱码,具体编码格式根据之前还原的数据库编码来确定,建议都使用utf8set character_set_client = utf8;set character_set_server = utf8;set character_set_connection原创 2017-07-07 17:42:56 · 423 阅读 · 0 评论 -
数据库索引
要点不管以任何方式查询表, 最终都会利用主键通过聚集索引来定位到数据, 聚集索引(主键)是通往真实数据所在的唯一路径。有一种例外可以不使用聚集索引就能查询出所需要的数据, 这种非主流的方法 称之为「覆盖索引」查询, 也就是平时所说的复合索引或者多字段索引查询。改变了平衡树各节点中的索引数据内容,破坏树结构, 因此,在每次数据改变时, DBMS必须去重新梳理树(索引)的结构以确保它的正确,这原创 2018-01-16 18:55:03 · 414 阅读 · 0 评论 -
EXPLAIN命令详解
id d是用来顺序标识整个查询中SELELCT 语句的,在嵌套查询中id越大的语句越先执行。该值可能为NULL,如果这一行用来说明的是其他行的联合结果。select_type 表示查询的类型 simple 简单子查询,不包含子查询和unionprimary 包含union或者子查询,最外层的部分标记为primarysubquery 一般子查询中的子查询被标记为subque转载 2018-02-05 20:54:39 · 790 阅读 · 0 评论 -
MySQL索引
show index from tablenameTable 表名Non_unique 索引不能包括重复,则为0;否则为1Key_name 索引名Seq_in_index 索引中的列序列号,从1开始Column_name 列名Collation 列以什么方式存储在索引中。’A’–升序;NULL–无分类Cardinality 唯一值的数目的估计值。Sub_part 如果原创 2018-02-05 20:44:35 · 611 阅读 · 0 评论 -
MySQL 通过变量实现RowNumber
在和回校参加毕业典礼的学长吹水一通后,node学长看见我库里面有全国“十一五”县级行政区的一些数据,让我帮他查一下他家乡在全国的GDP排名。 因为库里面每条信息是里面包含了GDP等的一些基础信息,但是并没有具体排名的这一个字段。查询出GDP的SQL很简单,我们需要对查询出的结果集加一个排序的字段,有主键默认的排序那种效果的字段。Orcale是有rownum这样的隐藏字段的,但是MySQL并没有提供原创 2017-06-16 19:43:11 · 2398 阅读 · 0 评论 -
MySQL|RESTRICT|NO ACTION|CASCADE| SET NULL四种外键约束
外键约束比较多得两种情况: 1.父表更新时子表也更新,父表删除时如果子表有匹配的项,删除失败;ON UPDATE CASCADE ON DELETE RESTRICT2.父表更新时子表也更新,父表删除时子表匹配的项也删除;ON UPDATE CASCADE ON DELETE CASCADE上一次遇到无法插入已经关联外键表的原因就是: **如果子表试图创建一个在父表中不存在的外键值,InnoDB会原创 2016-07-31 11:21:06 · 2968 阅读 · 0 评论 -
操作MySQL数据库报出:Parameter index out of range (1 > number of parameters, which is
对MySQL进行insert操作,控制台抛出以下错误:Parameter index out of range (1 > number of parameters, which is 0) 调试了半天后查找资料后,问题就出在当设置参数时,没有相应的问号与之匹配或者根本就没有?号、 String sql = "insert into t_courler原创 2016-07-30 15:15:32 · 26518 阅读 · 1 评论 -
操作MySQL报出: Duplicate key or integrity constraint violation message from server 问题解决
月末了,把这几天写Android项目遇到的问题和学到的一些东西总结下,后台的数据请求传递是通过servlet来实现的。在解决完上一个java.sql.SQLException后,又遇到了下面的问题:Duplicate key or integrity constraint violation message from server: "Column 'CourlerTitle' cannot be原创 2016-07-30 15:40:51 · 6148 阅读 · 0 评论 -
Web性能优化学习MySQL查询缓存
在完成协会网站后,最近在学习Web性能优化。看咯很多博客和专栏,自己总结整理了一部分自己能用到的。启用MySQL查询缓存可以极大地减低数据库服务器的CPU使用率。一.下面是自己在wamp集成环境中开启MySQL查询缓存的步骤。1.打开MySQL consle,敲入"show variables like '%query_cache';"并没有出现query_cache_type 的原创 2016-06-29 20:25:32 · 874 阅读 · 0 评论 -
MySQL数据库MyISAM和InnoDB存储引擎的比较
不同的存储引擎适用于不同的业务场景。 原文地址:http://www.cnblogs.com/panfeng412/archive/2011/08/16/myisam-vs-innodb-of-mysql.html引子MySQL有多种存储引擎,MyISAM和InnoDB是其中常用的两种。这里介绍关于这两种引擎的一些基本概念(非深入介绍)。MyISAM是MySQL的默认存储引擎,基...转载 2018-03-07 19:58:45 · 278 阅读 · 0 评论