数据类型(列类型) 所谓数据烈性,就是对数据进行统一的分类.从系统角度出发时为了能够使用统一的方式进行管理,更好的利用有限的空间. SQL中讲数据类型分成三大类:1.数值类型,2.字符串类型和时间日期类型.…
字符串类型 在SQL中,讲字符串类型分成了六类:char,varchar,text,blob,enum,set char,定长字符串 磁盘(二维表)在定义结构的时候,就已经确定了最终数据的存储长度. char(L):L代表length,可以存储长度,单位为字符.最大长度值为255. varchar变长字符串 在分配空间的时候,按照最大的空间分配,但是实际上最终用了多少空间,是根据具体的数据来确定的. varchar(L):L表示字符长度,理论长度是65536个字符,但是会多出1到2个字节来确定存…
作业:站点统计 1.将用户的访问信息记录到文件中,独占一行,记录IP地址 <?php //站点统计 header('Content-type:text/html;charset=utf-8'); //获取用户信息 $ip = $_SERVER['REMOTE_ADDR']; //写入文件(追加) file_put_contents('record.text',$ip."\r\n",FILE_APPEND); 2.所有信息都是通过文件中记录的内容来计算的,读取整个文件,一行代表访问…
SQL基本操作 基本操作:CRUD,增删改查 将SQL的基本操作根据操作对象进行分类: 1.库操作 2.表操作 3.数据操作 库操作: 对数据库的增删改查 新增数据库: 基本语法: Create database 数据库名字[库选项]: 库选项:用来约束数据库,分为两个选项:1.字符集设定:charset/character set 具体字符集(数据存储的编码格式,中文常用字符集gbk和utf8.).2.校对集设定:collate 具体校对集(数据比较的规则). 例如:…
数据表的操作 表与字段是密不可分的. 新增数据表 Create table [if not exists] 表名( 字段名 数据类型, 字段名 数据类型, 字段n 数据类型 --最后一行不需要加逗号 )[表选项]; If not exists:如果表名不存在,那么就创建,否则不执行创建代码,实现检查功能. 表选项:控制表的表现 1.字符集:charset/character 具体字符集:--保证表中数据存储的字符集. 2.校对集:collate 具体校对集: 3.存储引擎:engine 具体的存…
关系型数据库概念: 1.什么是关系型数据库? 关系型数据库:是一种建立在关系模型(数学模型)上的数据库 关系模型:一种所谓建立在关系上的模型. 关系模型包含三个方面: 1.数据结构:数据存储的问题,二维表(有行和列). 2.操作指令集合:所有SQL语句. 3.完整性约束:表内数据约束(字段与字段),表与表间约束(外键). 2.关系型数据库的设计? 关系型数据库:从需要存储的数据需求中分析,如果是一类数据(实体)应该设计成一张二位表 表是由表头(字段名:用来规定数据的名字)和数据比分组成(实际存储…
原文:Mysql学习笔记(二)数据类型 补充 PS:简单的补充一下数据类型里的String类型以及列类型... 学习内容: 1.String类型 2.列类型存储需求 String类型: i.char与varchar char与varchar的类型相似,但是他们的保存方式和检索方式不同... char的存储结构是固定长度的存储...即指定了几个字节,那么就占用几个字节,如char(4),那么无论存入的是什么字串,那么都占用四个字节...char的 可表示长度范围为0-255的任何值,当保存的字节不…
原文:Mysql学习笔记(一)数据类型 学习内容: Mysql基本数据类型. 1.数字类型.. i.整型     Mysql数据类型             含义(有符号)     tinyint(m) 一个字节 范围(-128~127)     smallint(m) 两个字节 范围(-32768~32767)     mediumint(m) 三个字节 范围(-8388608~8388607)     int(m) 四个字节 范围(-2147483648~2147483647)     bi…
数据操作 新增数据:两种方案. 1.方案一,给全表字段插入数据,不需要指定字段列表,要求数据的值出现的顺序必须与表中设计的字段出现的顺序一致.凡是非数值数据,到需要使用引号(建议使用单引号)包裹. insert into 表名 values(值列表)[,(值列表)]: -- 可以一次性插入多条记录. 2.方案二,给部分字段插入数据,需要选定字段列表,字段列表出现的顺序与字段的顺序无关,但是值列表的顺序必须与选定字段的顺序一致. insert into 表名 (字段列表) values (值列表)…
01. mysql基础架构 SQL语句是如何执行的 学习一下mysql的基础架构,从一条sql语句是如何执行的来学习. 一般我们写一条查询语句类似下面这样: select user,password from mysql.user; 这样就可以返回一个结果,但却不知这条语句的内部执行流程. 如下是mysql的逻辑架构图: Mysql可以分为Server层和存储引擎层二部分. Server层有连接器/缓存/分析器/优化器/执行器,涵盖了mysql的很多核心功能. 存储引擎层负责数据的存储和读取,支…
MySQL是一个关系型数据库管理系统(RDBMS),它是当前最流行的 RDBMS 之一.MySQL分为社区版和企业版,由于其体积小.速度快.总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库. 一.什么是SQL SQL,即结构化查询语言(Structured Query Language),是与关系型数据库进行通信的标准语言.目前最新的标准是2008年7月开始采用的SQL-2008. 所谓SQL实现是指特定厂商的SQL产品或关系型数据库管理系统(RDB…
                                                                                                   (复习mysql )  (一)SQL分类: SQL语句根据其功能,主要分为四类:DDL.DML.DQL.DCL. DDL: Data DefinitionLanguage (DDL)数据定义语言,用来定义数据库对象(数据库,表, 字段) DML:Data Manipulation Language 数…
sql注意事项: SQL 对大小写不敏感:SELECT 与 select 是相同的 某些数据库系统要求在每条 SQL 语句的末端使用分号. CREATE DATABASE CREATE DATABASE 语句用于创建数据库. CREATE DATABASE dbname; CREATE TABLE CREATE TABLE 语句用于创建数据库中的表. 表由行和列组成,每个表都必须有个表名. CREATE TABLE table_name ( column_name1 data_type(size…
写在开头:本文所有的示例都是基于workers表,表中保存了某公司的员工姓名.性别.工资.年龄和居住城市,如下: +----+-----------+--------+--------+------+----------------+ | id | name | sex | salary | age | city | +----+-----------+--------+--------+------+----------------+ | 2 | Paul | male | 5170 | 23…
一.什么是视图 视图是一个虚拟表.也就是说,视图在外观和行为上都类似于表,但它不需要实际的物理存储,只保存了视图定义(查询语句). 视图由select查询所定义 -- 当创建一个视图时,实际上是在数据库里执行了一个select语句,它从一个或多个表中导出这个视图. 对视图的操作与对表的操作一样,可以对视图进行查询.更新.删除. 视图只是从表里引用数据,所以对视图的更新会反映到表中,对表的更新也会反映到视图中. 如果用于创建视图的表被删除了,该视图将不可访问. 视图的作用: 简化数据访问.当我们需…
MySQL系列之自连接简介,MySQL自连接操作,没有特定的关键字,所谓自连接指的是同一个表不同实例之间的join操作 引用https://www.w3resource.com的图示: 特征: 自连接是同一个表不同实例的连接操作 自连接必须指定别名(aliasName)区分不同实例 自连接操作一般应用与有层级关系的表,最经典的就是员工/经理例子 ok,下面举例说明 创建部门dept表 /*Table structure for table `dept` */ DROP TABLE IF EXIS…
一.登录参数 -D 打开指定数据库 -h 服务器名称 -p 密码 -P 端口 -u 用户名 -V 输出版本信息并退出 --prompt 提示符 mysql> ,或者登陆后 用prompt命令 提示符:\D 完整的日期\d 当前数据库\h 服务器名称\u 当前用户 二.常用命令 1.显示当前服务器版本 select version(); 2.显示当前时间 select now(); 3.显示当前用户 select user(); 4.显示当前用户打开的数据库 select database();…
开始今天读书笔记之前我觉得需要回顾一下当我们在更新一条数据的时候做了什么. 因为 WAL 技术的存在,所以当我们执行一条更新语句的时候是先写日志,后写磁盘的.当我们在内存中写入了 redolog 之后,就返回已经更新成功了.后续通过其他的手段将数据写回到磁盘上. 当内存数据也跟磁盘数据页不一致的时候,我们就称这个内存页为“脏页”.内存数据写入到磁盘后,内存和磁盘上的数据页的内容就一致了,称为“干净页”. 有几种场景会让 MySQL 主动将 redo log 里面的记录刷到实际的数据更新上面. 1…
其他重要的事情 一)索引管理优化 1.把多条alter语句整合为一条 2.去除重复的索引 1)当一个索引的最左边部分包含到其他索引中时,被认定为重复索引 create table user( id int primary key auto_increment, name ), address ), age tinyint, index m1 (name, address), index m2 (name, age) ); 2)主键不需要额外添加为索引 3.删除不用的索引 二)数据类型相关的改进…
Mysql语句优化--索引 一.开始优化前的准备 一)explain语句 当MySql要执行一个查询语句的时候,它首先会对语句进行语法检查,然后生成一个QEP(Query Execution Plan) QEP决定了MySql从底层存储引擎获取信息的方式. 语法:explain [extended | partitions] select ...... 或者:explain tableName (此时相当与desc语句) explain select * from artist where na…
Mysql快速入门 一)基本概念 1)表 行被称为记录,是组织数据的单位.列被称为字段,每一列表示记录的一个属性. 2)主键 主键用于唯一的标识表中的每一条记录.可以定义表中的一列或者多列为主键, 但每张表中主键只能有一个,主键列上不能有两行相同的值,也不能为空值. 二)数据库基本操作 1)从命令行登陆mysql: mysql -h hostName -u loginName -p 2)查看当前所有数据库: shwo databases; 3)创建数据库: create database tan…
SQL 拥有很多可用于计数和计算的内建函数. SQL Aggregate 函数 SQL Aggregate 函数计算从列中取得的值,返回一个单一的值. 有用的 Aggregate 函数: AVG() - 返回平均值 COUNT() - 返回行数 FIRST() - 返回第一个记录的值 LAST() - 返回最后一个记录的值 MAX() - 返回最大值 MIN() - 返回最小值 SUM() - 返回总和 SQL Scalar 函数 SQL Scalar 函数基于输入值,返回一个单一的值. 有用的…
所谓复杂查询,指涉及多个表.具有嵌套等复杂结构的查询.这里简要介绍典型的几种复杂查询格式. 一.连接查询 连接是区别关系与非关系系统的最重要的标志.通过连接运算符可以实现多个表查询.连接查询主要包括内连接.外连接等. 假设有Student和Grade两个表如下: +-----+--------+-------+ +-----+------------+--------+ | sID | sName | sDept | | gID | gCourse | gScore | +-----+-----…
我们知道,一种数据模型必须包含三个基本的部分: 构造机制(数据结构):主要描述数据的类型.内容.性质以及数据间的联系等. 运算机制(数据操作):主要描述在相应的数据结构上的操作类型和操作方式. 约束机制(数据约束):主要描述数据结构内数据间的语法.词义联系.他们之间的制约和依存关系,以及数据动态变化的规则,以保证数据的正确.有效和相容. 作为数据库的一种数据模型,关系模型提供了一组完整性规则或限制.完整性约束用于确定关系数据库里数据的准确性和一致性. 在关系型数据库里,完整性约束包括域完整性.实…
MySQL提供了多种数据类型,主要包括数值型.字符串类型.日期和时间类型. 1.数值类型 整数类型:TINYINT(1字节).SMALLINT(2字节).MEDIUMINT(3字节).INT(INTEGER)(4字节).BIGINT(8字节) 浮点类型:FLOAT(4字节).DOUBLE(8字节) 定点数类型:DEC(M,D)(M + 2字节).DECIMAL(M,D)(M+2字节) 位类型:BIT(M)(1~8字节) (1)整数类型 MySQL支持在类型名称后面的小括号内指定显示宽度,例如in…
一.初识MySQL数据库 1.数据库的概述 <1>数据库:Database 长期存储在计算机内的,有组织的,可共享的数据集合. 存储数据的仓库.(文件) <2>数据库管理系统:Database Management System 操纵和管理数据库的软件.(软件) <3>数据库的类型 关系型数据库:二维表的形式存储数据. 非关系型数据库:NoSQL---------Not only SQL Redis:键值对存储,K-V形式存储 MongoDB:文档存储,将数据以文档的形…
一.常用数据类型 二.选择数据类型的原则: 1 业务需要 2 满足第一个条件下,需要存储空间最小的. 三.常用的选择数据类型思路:…
一.什么是索引 索引(Index),可以看作一个指针,指向表里的数据.当数据库没有索引时,查找信息通常是全表扫描:使用了索引,它就会直接引导到数据在表里的准确物理位置. 优点:索引的主要目的是提高数据检索的性能,在数据量比较大时尤其明显. 缺点: 索引通常与相应的表是分开保存的,索引也会占据物理存储空间,而且可能比表本身还大. 索引的维护(索引项的添加和删除)有时间消耗,会影响数据检索的速度. 当为字段添加了索引后,索引里记录了与被索引字段相关联的位置值.当表里添加新数据时,索引里也会添加新项.…
Mysql基础笔记 环境配置 基本概念 mysql命令行 进入 use show 查询 select order by where like 数据过滤regexp concat 文本函数 日期函数 数值函数 聚集函数 group 子查询 联结表 高级联结表 组合查询 全文本搜索 插入数据 更新 删除 表操作 视图操作 存储过程 游标 触发器 事务 导入导出 性能研究 实时监控 update: 2013-08-11, 笔记录了一半不到,还没码完….>< update: 2013-11-23, D…
大家好,我是浅墨竹染,以下是MySQL基础整理(一)之SQL基础 1.SQL简介 SQL(Structure Query Language)是一种结构化查询语言,是使用关系模型的数据库应用语言. 2.SQL分类 DDL(Data Definition Language)语句:数据定义语言,这些语句定义了不同的数据段.数据库.表.列.索引等数据库对象.常用的语句关键字主要包括create.drop.alert等. DML(Data Manipulation Language)语句:数据操纵语句,用…