前只学了MySQL的增删改查的简单操作,最近听了慕课网的《与MySQL的零距离接触》https://www.imooc.com/learn/122,最后讲到了MySQL的存储引擎,以前没接触过,在这里整理一下。后面有看到相关的东西可以再添加上去。MySQL的存储引擎1.简介MySQL将数据以不同的技术存储在文件(内存)中,这种技术称为存储引擎。常见的存储引擎: -MyISAM-InnoDB-Memory-CSV-Archive2.相关知识(1)并发控制: 当多个连接对记录进行修改时保证数据...
林炳文Evankaka原创作品。转载请注明出处http://blog.csdn.net/evankaka 本文将主要讲解了数据库的一些基础知识,介绍了MySql的存储引擎,最后讲了MySql常用的数据类型1、基础知识1.1、数据库概述 简单地说:数据库(Database或DB)是存储、管理数据的容器; 严格地说:数据库是“按照某种数据结构对数据进行组织、存储和管理的容器”。 总结:数据永远是数据库的核心。1.2、关系数据库管理系统通过“数据库管理系统...
由于一直使用python3进行编码,在使用Python2时,将爬虫数据连接数据库进行存储时,出现如上的报错,经查资料 是数据库编码问题。如下转自:http://www.cnblogs.com/liuzhixin/p/6274821.html 的博客,在此感谢博主的慷慨分享之情。 错误原因:我们可以看到错误提示中的字符0xF0 0x9F 0x98 0x84 ,这对应UTF-8编码格式中的4字节编码(UTF-8编码规范)。正常的汉字一般不会超过3个字节,为什么为出现4个字节呢?实际上是它对应的是...
连接数据库: sudo mysql -p+密码 例如:sudo mysql -p123456 1、显示数据库列表。 show databases; 2、显示库中的数据表: use mysql; //打开库 show tables; 3、显示数据表的结构: describe 表名; 4、建库: create database 库名; GBK: create database test2 DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci; UTF8: CREATE DATABASE `test2` DEFA...
实际应用小例子之前所使用的存储过程基本上都是封装mysql 简单的select 语句。虽然它们全都是有效的存储过程例子,但只有在存储过程中包含业务规则和智能处理时,他们的威力才会真正显示出来如完成以下事情,获得与之前一样的订单合计,但需要对合计增加营业税,不过只针对某些顾客,主要就是:1、获得合计2、把营业税有条件的添加到合计 3、返回合计(带或不带税)存储过程的实现如下: delimiter $$-- 存储过程的名字时 : proc...
mysql存储过程详解1. 存储过程简介 我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它。一个存储过程是一个可编程的函数,它在数据库中创建并保存。它可以有SQL语句和一些特殊的控制结构组成。当希望在不同的应用程序或平台上执行...
原创文章,转载必需注明出处:http://www.cnblogs.com/wu-jian/ 前言需求源自项目中的MemCache需求,开始想用MemCached(官方站点:http://memcached.org/ ),但这个在Linux下面应用广泛的开源软件无官方支持的Windows版本。后来看到博客园在用NorthScale Memcached Server(官方站点:http://www.couchbase.com/products-and-services/memcached),貌似共享收费,又犹豫了。其实项目里的需求很简单,也想自己用.NetCache来实现,...
今天在mysql数据库中执行一个存储过程,由于没有安装mysql数据连接工具,只好在黑框框里执行然后就遇到下面的问题:一直说是我的存储过程的语法有问题,但是看了好久都没有看出问题,后来查了一上午资料才发生问题所在:在mysql中“;”会默认为是一句sql语句的结束,所以在使用source命令执行数据库脚本时,遇到“;”符号时,数据库会认为你一句sql语句写完了,他会自动执行这句,这时候就出问题了,要解决这个问题可以使用DELIM...
//顺序堆栈的操作实现
void StackInitiate(SeqStack *S)
{S->top=0;
}
int StackNotEmpty(SeqStack S)
{if(S.top<=0)return 0;else return 1;
}
int StackPush(SeqStack *S,DataType x)
{if(S->top>=MaxStackSize){printf("堆栈已满无法插入!\N");return 0;}else{S->stack[S->top] = x;S->top++;return 1;}
}
int StackPop(SeqStack *S,DataType *d)
{if(S->top<=0){printf("堆栈已空无数据元素出栈!\n");return 0;}else{S->top-...
工作需要,用到MYSQL的分页功能,在网上找到一个不错的分页存储过程,代码整理了一下! 存储过程代码CREATEPROCEDURE `sp_hj_splitpage`(in _pagecurrent int,/*当前页*/in _pagesize int,/*每页的记录数*/in _ifelse varchar(1000),/*显示字段*/in _wherevarchar(1000),/*条件*/in _ordervarchar(1000)/*排序*/
)
COMMENT ‘分页存储过程‘BEGINif _pagesize<=1thenset _pagesize=20;endif;if _pagecurrent <1thenset _pagecur...
断点续传、QQ等项目的数据保存在数据库中实现。本文出自 “作业” 博客,请务必保留此出处http://10718270.blog.51cto.com/10708270/1793274原文:http://10718270.blog.51cto.com/10708270/1793274
字段类型为 text,独立出来一张表,用主键来对应,避免影响其它字段索 引效率。 1、因为mysql 是行存储模式,所以会把整行读取出来。text 储存了大量的数据。读取时,占了大量的io。所以会十分的慢。2、每行的数据过大 行溢出 InnoDB 会将一些大对象数据存放在数据页之外的 BLOB 页中,然后在查询时根据指针去对应的 BLOB 页中查询查询变慢 下 参考 : https://blog.csdn.net/zdplife/article/details/94607896原文:https://www.c...
存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。使用情况:比如有1万个请求都是做同一个业务;这个业务需要修改20个表的内容,那么不用存储过程,就是用一条一条的sql语句实现咯; 就算不直接用sql,也是间接使用吧;不管你有没有所谓的中间层业务处理服务器,它也要和数据库打交道吧;试...
declare startTime VARCHAR(19) default ‘2014-00-00 00:00:00‘;declare tempTime VARCHAR(19) default NOW();declare endTime VARCHAR(19) default DATE_SUB(tempTime,INTERVAL ‘3‘ MONTH); -- 后退三个月时间DECLARE MONTHSTR VARCHAR(7) default SUBSTR(endTime,1,7);set endTime=CONCAT(MONTHSTR,‘-00 00:00:00‘);SELECT startTime as startTime,endTime AS endTime;原文:http://www.cnblogs.com/cynchanpin/p/683530...
索引的概念
数据库中的索引与书籍中的目录类似在一本书中,无须阅读整本书,利用目录就可以快速查找所需信息
书中的目录是一个词语列表,其中注明了包含各个词的页码数据库索引在数据库中,索引数据库程序无须对整个表进行扫描,就可以在其中找到所需数据
数据库中的索引是某个表中一列或者若干列值的集合,以及物理标识这些值的数据页的逻辑指针清单索引的作用设置了合适的索引之后,数据库利用各种快速的定位技术,能够大大加快查...