数据库
Moffett Lee
艺术是精神和物质的奋斗。
展开
-
MySQL数据库安装
一、基础部分1.数据库是什么之前所学,数据要永久保存,比如用户注册的用户信息,都是保存于文件中,而文件只能存在于某一台机器上。如果我们不考虑从文件中读取数据的效率问题,并且假设我们的程序所有的组件都运行在一台机器上,那么用文件存取数据,并没有问题但需要考虑的问题是:程序的执行效率依赖于承载它的硬件,而一台机器机器的性能总归是有限的,受限于目前的硬件水平,垂直扩展是有极限的。于是我们只能通过水平扩展...原创 2018-04-08 14:33:15 · 153 阅读 · 0 评论 -
优化查询的方式
一、假设有三张表 Room id 1 2 .. 1000 User: id 1 .. 10000Booking: user_id room_id time_id date 1 1 8:00 2017...原创 2018-04-09 14:11:01 · 279 阅读 · 0 评论 -
mysql之视图,触发器,事务等。。。
一、视图视图是一个虚拟表(非真实存在),其本质是【根据SQL语句获取动态的数据集,并为其命名】,用户使用时只需使用【名称】即可获取结果集,可以将该结果集当做表来使用。使用视图我们可以把查询过程中的临时表摘出来,用视图去实现,这样以后再想操作该临时表的数据时就无需重写复杂的sql了,直接去视图中查找即可,但视图有明显地效率问题,并且视图是存放在数据库中的,如果我们程序中使用的sql过分依赖数据库中的...原创 2018-04-09 14:09:43 · 197 阅读 · 0 评论 -
pymysql模块
一、安装的两种方法第一种#安装pip3 install pymysql第二种二、链接,执行sql,关闭(游标)import pymysqluser= input('用户名:>>').strip()pwd= input('密码:>>').strip()#先链接,拿到游标conn=pymysql.connect(host='localhost',user='root...原创 2018-04-09 14:08:25 · 168 阅读 · 0 评论 -
mysql数据库备份
一、IDE工具介绍生产环境还是推荐使用mysql命令行,但为了方便我们测试,可以使用IDE工具下载链接:https://pan.baidu.com/s/1bpo5mqj二、MySQL数据备份#1. 物理备份: 直接复制数据库文件,适用于大型数据库环境(如数据文件、控制文件、归档日志文件等)。但不能恢复到异构系统中如Windows。 #2. 逻辑备份: 备份的是建表、建库、插入等操作所执行SQ...原创 2018-04-09 14:06:47 · 145 阅读 · 0 评论 -
MySQL之索引原理与慢查询优化
一、介绍1.什么是索引?一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,在生产环境中,我们遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,因此对查询语句的优化显然是重中之重。说起加速查询,就不得不提到索引了。2.为什么要有索引呢?索引在MySQL中也叫做“键”,是存储引擎用于快速找到记录的一种数据结构。索引对于良好的性能非常关键,尤其是当表中的数据量越...原创 2018-04-08 14:49:11 · 170 阅读 · 0 评论 -
MySQL数据库sql_mode 改成非only_full_group_by问题
用到GROUP BY 语句查询时com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'col_user_6.a.START_TIME' which is n...原创 2018-04-08 14:47:45 · 542 阅读 · 0 评论 -
mysql之多表查询
一、介绍首先先准备表员工表和部门表#建表create table department(id int,name varchar(20) );create table employee1(id int primary key auto_increment,name varchar(20),sex enum('male','female') not null default 'mal...原创 2018-04-08 14:45:16 · 279 阅读 · 0 评论 -
mysql数据库之单表查询
#创建表create table employee(id int not null unique auto_increment,name varchar(20) not null,sex enum('male','female') not null default 'male', #大部分是男的age int(3) unsigned not null default 28,hire_d...原创 2018-04-08 14:43:35 · 275 阅读 · 0 评论 -
数据库之表与表之间的关系
表1 foreign key 表2则表1的多条记录对应表2的一条记录,即多对一利用foreign key的原理我们可以制作两张表的多对多,一对一关系多对多: 表1的多条记录可以对应表2的一条记录 表2的多条记录也可以对应表1的一条记录一对一: 表1的一条记录唯一对应表2的一条记录,反之亦然分析时,我们先从按照上面的基本原理去套,然后再翻译成真实的意义,就很好...转载 2018-04-08 14:42:25 · 295 阅读 · 0 评论 -
数据库之完整性约束
一、介绍约束条件与数据类型的宽度一样,都是可选参数作用:用于保证数据的完整性和一致性主要分为:PRIMARY KEY (PK) 标识该字段为该表的主键,可以唯一的标识记录FOREIGN KEY (FK) 标识该字段为该表的外键NOT NULL 标识该字段不能为空UNIQUE KEY (UK) 标识该字段的值是唯一的AUTO_INCREMENT 标识该字段的值自...原创 2018-04-08 14:40:49 · 256 阅读 · 0 评论 -
mysql数据库之数据类型
首先补充点了解的小知识;select * from mysql.user #显示出来乱了select * from mysql.user\G #加了\G后一行一行显示了一、数据类型:分不同种类去存不同类型的数据存储引擎决定了表的类型,而表内存放的数据也要有不同的类型,每种数据类型都有自己的宽度,但宽度是可选的1、数字(默认是有符号的)数字又分为: 整型:tinyint(小整型):一个字节 ...原创 2018-04-08 14:39:40 · 164 阅读 · 0 评论 -
mysql数据库之表操作-数据操作
注意的几点:1.如果你在cmd中书命令的时候,输入错了就用\c跳出 2.\s查看配置信息一、操作文件夹(库)增:create database db1 charset utf8;删:drop database db1;改:alter database db1 charset gbk;查:show databases; #查看所有的数据库 show create databas...原创 2018-04-08 14:36:02 · 161 阅读 · 0 评论 -
mysql数据库基本操作和储存引擎
一、知识储备数据库服务器:一台计算机(对内存要求比较高)数据库管理系统:如mysql,是一个软件数据库:oldboy_stu,相当于文件夹表:student,scholl,class_list,相当于一个具体的文件记录:1 susan 158426544 22,相当于文件中的一行内容二、初始SQL语言SQL(Structured Query Language 即结构化查询语言)SQL语言主要...原创 2018-04-08 14:34:31 · 146 阅读 · 0 评论 -
解决mysql老是停止问题
你可能还会遇到无法启动mysql的错误解决方法如下:原创 2018-04-10 14:52:25 · 1064 阅读 · 0 评论