在介绍这些SQL语言之前,先罗列一下mysql的常用数据类型和数据类型修饰,供查询参考

后面的带数字表示此类型的字段长度

数值型:

TINYINT 1 ,SMALLINT 2,MEDIUMINT 3 ,INT 4,BIGINT 8,DECIMAL,FLOAT 4,DOUBLE 8,BIT

字符串型

CHAR,VARCHAR,BINARY,VBINARY,TINYBLOB,BLOB,MEDIUMBLOB,LONGBLOG,TINYTEXT,TEXT,MEDIUMTEXT,LONGTEXT,EMUM,SET

日期时间型

date,time,datetime,timestamp

数据限定修饰:

NOT NULL,NULL,DEFAULT,AUTO_INCREMENT,UNSIGNED,PRIMARY KEY,UNIQUE KEY,FOREIGN KEY

CHARACTER SET #ps:SHOW CHARACTER SET 显示当前数据库所支持的所有字符集

COLLATION #ps:SHOW COLLATION 显示所支持的所有排序规则

以下是SQL的每种DDL,DCL,DML语言

DDL

----Data Definition Language 数据库定义语言

如 create procedure之类

创建数据库

CREATE DATABASE [IF NOT EXISTS] DBNAME [CHARACTER SET 'CHAR_NAME'] [COLLATE 'COLL_NAME']

修改:ALTER 删除:DROP

创建一张新表

CRTATE TABLE [IF NOT EXISTS] TBNAME(col_name col_definition,...)

EXAMPLE:

也可以这样写(区别在于单独定义主键,唯一键和索引):

查询出一张表的数据后创建新表(字段定义会丢失,数据会保留)

CREATE TABLE TBNAME SELECT...

EXAMPLE:

以一张表的格式定义,创建一张新的空表

CREATE TABLE TBNAME1 LIKE TBNAME2

修改表:

ALTER TABLE tb_name

MODIFY #修改字段定义

CHANGE #可以修改字段名和字段定义

ADD

DROP

EXAMPLE:

给表添加字段

添加惟一键

修改字段:

修改course字段为Course字段,并放在Name字段之后(修改字段需要带上新的字段的定义)ps:MODIFY只能修改字段定义

重命名表名

添加一个外键约束

创��索引

CREATE INDEX index_name ON TABLE (col_name[(length)] [ASC|DESC]) [USING {BTREE|HASH}];

删除索引

DROP INDEX index_name ON TBNAME;

查看表状态:SHOW STATUS LIKE 'TBNAME';

查看表的索引:SHOW INDEXES FROM TBNAME;

DML

----Data Manipulation Language 数据操纵语言

如insert,delete,update,select(插入、删除、修改、检索)

插入修改数据

#如果每个字段都有值,不需要写字段名称,每组值用,隔开

mysql>INSERT INTO tb_name (col1,col2) VALUES ('STRING',NUM),('STRING',NUM);

mysql>INSERT INTO tb_name SET col1='string',col2='string';

mysql>INSERT INTO tb_name (col1,col2,col3) SELECT...;

EXAMPLE:

更新数据

替换数据:

和UPDATE使用方式一样,只要将UPDATE换成REPLACE即可

删除数据

mysql>DELETE FROM tb_name WHERE conditions;

清空表:将会重置计数器

mysql>TRUNCATE tb_name

查询数据

单表查询:

mysql>SELECT [DISTINCT] column FROM tb_name WHERE CONDITION;

EXAMPLE:

#基本投影查询

#重复的结果只显示一次

#组合条件,可以使用AND,OR,NOT,XOR组合多个条件

#使用BETWEEN...AND...筛选出年龄介于20-25之间的数据

#查询Name以Y开头的的数据,%表示任意长度的任意字符,_表示任意单个字符

#使用正则表达式匹配查询,关键词为RLINK或者REGEXP

#使用IN关键词,将条件限定在一个列表中。用IS关键词,表示条件是否为空(IS NULL 或者 IS NOT NULL)

#将查询的结果进行排序

#查询结果别名显示

#LIMIT限定查询结果的条数,LIMIT 2,3表示偏移2条数据后,取3条数据

#求平均数:AVG(),最大值:MAX() 最小值MIN() 数量:COUNT() 求和:SUM()

#分组GROUP BY

#别名:AS

#过滤:HAVING

多表查询:

#指定已哪个字段连接2张表

#连接时指定别名

#左外连接...LEFT JION...ON...

#右外连接...RIGHT JION...ON...

子查询

#查询年龄大于平均年龄的数据

#在FROM中使用子查询

#联合查询

创建视图

CREATE VIEW VIEW_NAME AS SELECT....

DCL

----Data Control Language 数据库控制语言

如grant,deny,revoke等,只有管理员才有这样的权限。

创建用户

mysql>CREATE USER 'USERNAME'@'HOST' IDENTIFIED BY 'PASSWORD'

删除用户

mysql>DROP USER 'USERNAME'@'HOSHOST支持通配符

_:任意单个字符

%:任意多个字符

授权

mysql>GRANT pri1,pri2...ON DB_NAME.TB_NAME TO 'USERNAME'@'HOST' [IDENTIFIED BY 'PASSWORD']

取消授权

mysql>REVOKE pri1,pri2...ON DB_NAME.TB_NAME FROM 'USERNAME'@'HOST';

查看授权

mysql>SHOW GRANTS FOR 'USERNAME'@'HOST';

EXAMPLE:

mysql授权dml_Mysql DML DCL DDL相关推荐

  1. Mysql中的DML和DDL语言

    文章目录 前言 一.DML 1.DML的含义 2.插入 3.修改 4.删除 二.DDL 1.DDL的含义 2.库和表的管理 3.常见数据类型 4.常见约束 总结 前言 DML和DDL是MySQL中最基 ...

  2. oracle的DML,DCL,DDL区别

    DML(Data Manipulation Language,数据操作语言):用于检索或者修改数据.     DML包括:  SELECT:用于检索数据:         INSERT:用于增加数据到 ...

  3. consistent read一致性读,DDL DML DCL

    一致性读的概念consistent read mysql 的读操作是快照读,也就是说,在读操作执行的时候是某一个时刻的数据内容,不管其他的事务在做什么,原始数据会依据undo log 进行重新组织.一 ...

  4. mysql数据库DDL,DML,DCL操作

    mysql数据库操作 文章目录 mysql数据库操作 1:mysql工具使用 2:服务器监听的两种socket地址 3:mysql数据库数值类型 4:DDL操作 4.1 数据库操作 4.2:表操作 4 ...

  5. mysql并行dml_MySql的回顾九DML表数据的增,删,改,与DDL库表的增删改,约束

    雷霆空霹雳,云雨竟虚无.炎赫衣流汗,低垂气不苏.杜圣人热的时候不知是怎么解暑的???但这边这几天天气好像一直都不是太好哎! 不过无所谓了,都过了这么长时间,也习惯了,我还是继续带各位看官复习MySql ...

  6. oracle12c dml语句缓存,Oracle --DML、DDL、DCL

    DML.DDL.DCL的区别 1. DML概述:(data manipulation language),数据操纵语言.用于操纵数据库对象中包含的数据,也就是说操纵的对象是记录. 1.1 DML的主要 ...

  7. Oracle --DML、DDL、DCL

    2019独角兽企业重金招聘Python工程师标准>>> DML.DDL.DCL的区别 1. DML概述:(data manipulation language),数据操纵语言.用于操 ...

  8. DDL, DML, DCL, 和TCL的含义

    DDL, DML, DCL, 和TCL是什么? 在一些公司中提交给测试团队的SQL脚本会划分为DDL.DML等,但这些概念到底是如何定义的呢?SQL(Structure Query Language) ...

  9. DML、DDL、DCL的分别是什么

    DML.DDL.DCL的分别是什么 一直以来,分不清这三者的简称代表什么,甚至在面试中遇到可能会张冠李戴.今天特意记录一下. 一.DML(data manipulation language) 数据操 ...

最新文章

  1. DedeCMS(织梦)安全设置经验分享
  2. 查询出的数据记录字段要与实体类中的属性名一致
  3. nginx限制ip,只允许域名访问
  4. 操作系统习题3—进程的互斥与同步
  5. 样条表示---样条表示之间的转换
  6. VTK:PolyData之GetPoint
  7. python实现最小二乘法的线性回归_最小二乘法求线性回归的python实现
  8. 计算机拆卸组装过程,如何拆卸并重新组装笔记本电脑
  9. 容器撑满占满整个高度,垂直居中等
  10. 2020成考C语言答案,2020年_优学院_C语言程序设计_章节答案
  11. 【华为云技术分享】《跟唐老师学习云网络》 - Tcpdump大杀器抓包
  12. 使用Java生成验证码
  13. uni-app 选择图片(chooseImage)
  14. 微信公众号开发--公众号关注推送配置与菜单配置
  15. 本世纪最好的NSA!
  16. Java AOP自定义注解
  17. java运算符(算数运算符、三目运算符、位运算符)
  18. python3 urllib 内存泄露_【专家专栏】张昊 | 从urllib2的内存泄露看python的GC
  19. 沐神的 《动手学深度学习》 课程中的 3.2节 线性回归的从零实现
  20. 导航上用CSS标志当前页效果的实现

热门文章

  1. NUC1840 Graveyard Design【尺取法】
  2. UVA1585 UVALive3354 Score【水题】
  3. 【换句话说】【等价描述】—— 定义及概念的不同描述
  4. matlab 构建数据集实用 api
  5. 数据结构与算法的分析 —— 渐进复杂度(三个记号)
  6. 【笔试/面试】—— 数组中第二大的数
  7. ZooKeeper 基本操作
  8. python不会英语不会数学怎么自学-英语和数学都不好,但是我想学Python编程可以吗?...
  9. python常用代码入门-入门十大Python机器学习算法(附代码)
  10. python 入门基础-如何学习Python,以及新手如何入门?