MySQL基础(4) | 视图 基本语法 1.创建 CREATE VIEW <视图名> AS <SELECT语句> 语法说明如下. <视图名>:指定视图的名称.该名称在数据库中必须是唯一的,不能与其他表或视图同名. <SELECT语句>:指定创建视图的 SELECT 语句,可用于查询多个基础表或源视图. 对于创建视图中的 SELECT 语句的指定存在以下限制: 用户除了拥有 CREATE VIEW 权限外,还具有操作中涉及的基础表和其他视图的相关权限. SE…
MySQL基础(五)--视图…
0x01 MySQL中字符大小写 1.SQL关键字及函数不区分大小写 2.数据库.表及视图名称的大小写区分与否取决于底层OS及FS 3.存储过程.存储函数及事件调度器的名字不区分大小写,但触发器区分大小写 4.表别名区分大小写 5.对字段中的数据,如果字段类型为binary类型,则区分大小写,非binary不区分大小写 创建数据库 create database CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [[DEFAULT] CHARA…
1. 显示数据库列表 show databases; # 查看当前所有数据库 show databases \G   #以行的方式显示 2. 在命令行中,执行sql语句 mysql -e 'show databases' -uroot -p123456 mysqlshow -uroot -p123456 # 不常用,记住上面那个就行了 3.创建数据库语法 create database 数据库名; 例如: create database `HA-test`; 4. 切换数据库 use HA-te…
查看索引 mysql> show index from tblname; mysql> show keys from tblname; · Table 表的名称. · Non_unique 如果索引不能包括重复词,则为0.如果可以,则为1. · Key_name 索引的名称. · Seq_in_index 索引中的列序列号,从1开始. · Column_name 列名称. · Collation 列以什么方式存储在索引中.在MySQL中,有值‘A’(升序)或NULL(无分类). · Cardi…
不多说,直接上干货 1.查询当前用户下表的创建语句 select dbms_metadata.get_ddl('TABLE','ux_future') from dual; 2.查询其他用户下表的创建语句 select dbms_metadata.get_ddl('TABLE','ux_future','Admin') from dual; 3.查询表的index select index_name,index_type,table_name from user_indexes where ta…
0x01 MySQL的查询操作 单表查询:简单查询                 多表查询:连续查询                联合查询 选择和投影 投影:挑选要符合的字段     select 字段 ......... 选择:挑选符合条件的行 select 字段 from 表  ....... where ....... 投影:select 字段1,字段2,... from tb_name selcet * from tb_name 选择:select 字段1,字段2,.... from…
创建新表新索引 CREATE TABLE 表名(数据名 类型,INDEX  索引名称(属性)) 创建存在表的索引 CREATE INDEX 索引名称  ON 表名(属性) 修改索引 ALTER TABLE 表名   ADD INDEX 索引名称(属性) 删除索引 DROP INDEX 索引名称  ON  表名…
添加和删除字段操作 添加字段 alter table tbl_name add 字段名称 字段属性 [完整性约束条件] [first|after 字段名称之后]; 删除字段 alter table tbl_name drop 字段名称; 测试 create table if not exists user1( id int unsigned auto_increment key ); --添加用户名字段 username varchar(20) alter table user1 add use…
索引的使用 概述 1.索引由数据库中一列或多列组合而成,其作用是提高对表中数据的查询速度 2.索引的优点是可以提高检索数据的速度 3.缺点是创建和维护索引需要耗费时间 4.所以索引可以提高查询速度,减慢写入速度 分类 1.普通索引 2.唯一索引 (UNIQUE KEY就属于唯一索引) 3.全文索引 (通过FULLTEXT,只能在CHAR/VARCHAR/TEXT此类字段上,内容必须全部是英文) 4.单列索引 (在一个字段上创建的索引,可以是上面三种任意一种) 5.多列索引 6.空间索引 (通过S…
表的创建 常见的数据类型 数值型: 整型 tinyint.smallint.mediumint.int/integer.bigint 特点: 1.如果不设置无符号还是有符号,默认是有符号,如果想设置无符号,需要添加unsigned关键字 2.如果插入的数值超出了正型的范围,会报out of range异常,并且插入临界值 3.如果不设置长度,会有默认的长度 长度代表了显示的最大宽度,如果不够会用0在左边填充,但必须搭配zerofill使用! 小数型 浮点型:float(M,D) double(M…
查询数据库的占用 SELECT CONCAT(ROUND(SUM(index_length)/(1024*1024), 2), ' MB') AS 'Total Index Size' , CONCAT(ROUND(SUM(data_length)/(1024*1024), 2), ' MB') AS 'Total Data Size' FROM information_schema.TABLES where  table_schema like 'edb_a%' ; 查询表的占用 SELECT…
MySQL基础操作 一.视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,并可以将其当作表来使用.注意:使用视图时,将其当作表进行操作即可,由于视图是虚拟表,所以无法使用其对真实表进行创建.更新和删除操作,仅能做查询用. 1.创建视图 --格式:CREATE VIEW 视图名称 AS SQL语句 CREATE VIEW v1 AS SELECT nid, name FROM A WHERE nid > 4 2.…
@ 目录 视图是什么 视图的优点 1) 定制用户数据,聚焦特定的数据 2) 简化数据操作 3) 提高数据的安全性 4) 共享所需数据 5) 更改数据格式 6) 重用 SQL 语句 MySQL创建视图 基本语法 查询视图 MySQL查看视图 查看视图的字段信息 查看视图的详细信息 MySQL修改视图 基本语法 修改视图内容 MySQL删除视图 基本语法 索引是什么 为什么要使用索引 顺序访问 索引访问 索引的优缺点 优点 缺点 MySQL索引类型详解 存储方式区分 B-树索引 哈希索引 逻辑区分…
本文源码:GitHub·点这里 || GitEE·点这里 一.存储过程 1.概念简介 存储程序是被存储在服务器中的组合SQL语句,经编译创建并保存在数据库中,用户可通过存储过程的名字调用执行.存储过程核心思想就是数据库SQL语言层面的封装与重用性.使用存储过程可以较少应用系统的业务复杂性,但是会增加数据库服务器系统的负荷,所以在使用时需要综合业务考虑. 2.基本语法格式 CREATE PROCEDURE sp_name ([proc_parameter[,...]]) [characterist…
虚构一个微型在线书店的数据库和数据,作为后续MySQL脚本的执行源,方便后续MySQL和SQL的练习. 在虚构这个库的过程中,主要涉及的是如何使用命令行管理 MySQL数据库对象:数据库.表.索引.外键等:另一个更为重要的是如何Mock对应表的数据. 虚构书店数据库的dump脚本:Github 数据库(Database) 将要创建的虚拟书店的数据库名为: mysql_practice; 创建数据库的语法: CREATE DATABASE [IF NOT EXISTS] database_name…
原文:mysql基础之对库表操作 查看一下所有的库,怎么办? Mysql>Show databases; 选库语句: Use 库名 创建一个数据库: create database 数据库名 [charset 字符集] 删除一个数据库: drop database 数据库名; 把数据库改改名? Mysql中,表/列可以改名,database不能改名. phpMyAdmin似乎有这功能? 他是建新库,把所有表复制到新库,再删旧库完成的. 当选了库之后,我们面对的是表 查看库下面的所有表: show…
一 什么是驱动表   1)指定了联接条件时,满足查询条件的记录行数少的表为[驱动表]:   2)未指定联接条件时,行数少的表为[驱动表](Important!).   表现 explain第一行出现的就是驱动表二  多表查询的分类   1 多表join查询   2 多表join+子查询三 驱动表的分类  1 单表     单表执行顺序有2种情况     1 单表先执行条件过滤,结算出结果再进行关联join     2 单表先进行关联join,再结果进行条件过滤 可以根据explain驱动表的索引…
MySQL  增删查改 一.增:有2种方法 1.使用insert插入单行数据: 语法:insert [into]<表名> [列名] values <列值> 例:insert into Strdents (姓名,性别,出生日期) values ('XXX','男','1990/6/15') 注意:如果省略表名,将依次插入所有列 2.使用insert,select语句将现有表中的 数据添加到已有的新表中 语法:insert into <已有的新表> <列名> s…
(3.12)mysql基础深入——mysql日志文件/其他文件(socket/pid/表结构/Innodb) 关键词:mysql日志文件,mysqldumpslow分析工具 目录:日志文件的分类 1.错误日志(error log) 2.二进制日志(binlog):mysqlbinlog分析查看工具 3.慢查询日志(show query log):mysqldumpslow分析工具 4.通用日志(general log) 5.重做日志(redo log) 6.中继日志(relay log) 7.D…
着重基础之—MySql 不能遗忘的索引操作 关于MySql索引的基础知识我就不在这里写了,我不太想当信息的搬运工. 技巧分享:Workbench 作为一款专为MySQL设计的ER/数据库建模工具.除了管理数据库外,其实也是一款Sql语句生成利器.合理利用,将带来事半功倍的效果.当然,前提是我们对基础知识的了解. 我先来整理一些索引操作的Sql语句,之所以整理,起因是我遇到问题时,在百度里查到的回复,基本上都是错的,需要有人来纠正. 1.多主键(PRIMARY)删除 假设场景:你在表里定义了多个主…
表 原文:http://yingminxing.com/mysql%E6%8A%80%E6%9C%AF%E5%86%85%E5%B9%95innodb%E5%AD%98%E5%82%A8%E5%BC%95%E6%93%8E%EF%BC%8D%E8%A1%A8%E7%B4%A2%E5%BC%95%E7%AE%97%E6%B3%95%E5%92%8C%E9%94%81/ 4.1.innodb存储引擎表类型 innodb表类似oracle的IOT表(索引聚集表-indexorganized table…
MySQL允许使用 CREATE TABLE 语句和 DROP TABLE 语句来创建.删除表,使用 ALTER TABLE 语句更改其结构.CREATE INDEX 语句和 DROP INDEX 语句则可以用来为已有表增加或删除索引.下面将详细解释这些语句.但先来了解一下MySQL支持的存储引擎的一些信息. 1.存储引擎的特性 MySQL支持多种存储引擎(以前被称为"表处理机器").每一种存储引擎所实现的表都具有一组特定的属性或特性.下表简要描述了几种存储引擎. 存储引擎 描    …
没有索引时mysql是如何查询到数据的 索引对查询的速度有着至关重要的影响,理解索引也是进行数据库性能调优的起点.考虑如下情况,假设数据库中一个表有10^6条记录,DBMS的页面大小为4K,并存储100条记录.如果没有索引,查询将对整个表进行扫描,最坏的情况下,如果所有数据页都不在内存,需要读取10^4个页面,如果这10^4个页面在磁盘上随机分布,需要进行10^4次I/O,假设磁盘每次I/O时间为10ms(忽略数据传输时间),则总共需要100s(但实际上要好很多很多).如果对之建立B-Tree索…
表 4.1.innodb存储引擎表类型 innodb表类似oracle的IOT表(索引聚集表-indexorganized table),在innodb表中每张表都会有一个主键,如果在创建表时没有显示的定义主键则innodb如按照如下方式选择或者创建主键.首先表中是否有唯一非空索引(unique not null),如果有则该列即为主键.不符合上述条件,innodb存储引擎会自动创建一个6字节大小的指针,rowid(). 4.2.innodb逻辑存储结构 innodb的逻辑存储单元由大到小分别是…
一.什么是视图 视图是一个虚拟表.也就是说,视图在外观和行为上都类似于表,但它不需要实际的物理存储,只保存了视图定义(查询语句). 视图由select查询所定义 -- 当创建一个视图时,实际上是在数据库里执行了一个select语句,它从一个或多个表中导出这个视图. 对视图的操作与对表的操作一样,可以对视图进行查询.更新.删除. 视图只是从表里引用数据,所以对视图的更新会反映到表中,对表的更新也会反映到视图中. 如果用于创建视图的表被删除了,该视图将不可访问. 视图的作用: 简化数据访问.当我们需…
MySQL基础 MySQL数据类型 整数类型 TINYINT. SMALLINT. MEDIUMINT. INT. BIGINT 属性:UNSIGNED 长度:可以为整数类型指定宽度,例如:INT(11).对大多数应用是没有意义的,它不会限制值的合法范围,只会影响显示字符的个数. int(3) 可以存 1234 ,不会出错.但是存储 12 并指定 zerofill属性的话,则会在前面补上0,成为012 实数类型 FLOAT. DOUBLE.DECIMAL DECIMAL可存储比BIGINT还大的…
一,约束以及修改数据表 约束的作用?1.约束保证数据的完整性.一致性:2.约束分为表级约束.列级约束:3.约束类型包括:NOT NULL(非空约束).PRIMARY KEY(主键约束).UNIQUE KEY(唯一约束).DEFAULT(默认约束).FOREIGN KEY(外键约束): 列级约束:只针对某一个字段:表级约束:针对两个或两个以上的字段: 1.外键约束的要求解析 外键约束作用:1.保持数据一致性.完整性:2.实现一对一或一对多关系:(这是也把MySQL称之为“关系型”数据库的一个根本性…
MYSQL:基础——索引原理及慢查询优化 索引的数据结构 索引的数据结构是B+树.如下图所示,B+树的节点通常被表示为一组有序的数据项和子指针.图中第一个节点包含数据项3和5,包含三个指针,第一个指针指向其数据项均小于3的节点,第二个指针指向其数据项介于3~5的节点,最后一个指针指向其数据项大于等于5的节点. 从上面我们发现一个很重要的特性,每一个父节点的数据项都出现在子节点中,是子节点最大或最小的数据项.这其实也表明了,非叶子节点不存储真实的数据,只存储指引搜索方向的数据项,如3,5并不真实存…