C(创建型功能)

  1. 创建数据库:CREATE DATABASE
  2. 创建用户:CREATE USER 用户名@主机 IDENTIFIED BY 密码; -- 如果想让该用户可以从任意远程主机登陆,可以使用通配符%
  3. 授权:GRANT ALL PRIVILEGES|权限列表 ON 库名.*|库名.表名 TO 用户名 IDENTIFIED BY 密码 WITH GRANT OPTION
  4. 如果想让用户可以对其他用户授权,需加上WITH GRANT OPTION

  5. 创建表:CREATE TABLE(字段名 数据类型 约束)引擎类型 字符集
  6. 创建索引:
    • CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX [USING 索引类型] 索引名 ON 表名 (列名1[, 列名2 …]);
    • 普通索引:ALTER TABLE 表名 ADD INDEX 索引名 (列名1[, 列名2 …]
    • 主键索引:ALTER TABLE 表名 ADD PRIMARY KEY(列名)
    • 唯一索引:ALTER TABLE 表名 ADD UNIQUE 索引名(列名)
  7. 插入数据:INSERT INTO TABLE 表名(列名1[, 列名2 …]) VALUES(值1[, 值2 …])

R(查询型功能)

  1. DBMS信息:
  2. 数据表信息
    • 查看表:SHOW TABLES; DESC 表名
    • 查看表索引:SHOW INDEX FROM|IN 表名;
  3. 查看用户的权限:SHOW GRANTS FOR 用户名@主机;

U(更新型功能)

  1. 重命名表:ALTER TABLE 原表名 RENAME [TO] 新表名
  2. 设置与更改用户密码:
    • 为其它用户设置:SET PASSWORD FOR 用户名@主机 = PASSWORD(密码);
    • 为当前登陆用户设置:SET PASSWORD = PASSWORD(密码);
  3. 添加列:
    • 新列在表最后面:ALTER TABLE 表名 ADD 列名 类型 约束
    • 新列在某列后面:ALTER TABLE 表名 ADD 列名 类型 约束 AFTER 某列
    • 新列加在最前面:ALTER TABLE 表名 ADD 列名 类型 约束 FIRST
  4. 修改列:
  5. 重建索引:REPAIR TABLE 表名 QUICK;
  6. 更新数据:UPDATE TABLE 表名 SET 列名1=值1[, 列名2=值2 …] WHERE 条件

D(删除型功能)

  1. 删除数据库:DROP DATABASE [IF EXISTS] 库名
  2. 删除表:DROP TABLE [IF EXISTS] 表名 -- 对于不存在的表,使用IF EXISTS防止错误发生
  3. 删除列:ALTER TABLE 表名 DROP 列名
  4. 删除索引:DROP INDEX可以在ALTER TABLE内部作为一条语句处理
    • DROP INDEX 索引名 ON 表名(列名1[, 列名2 …]);
    • ALTER TABLE 表名 DROP INDEX|UNIQUE|PRIMARY KEY 索引名(列名1[, 列名2 …]);
  5. 删除用户:DROP USER 用户名@主机;
  6. 撤销用户权限:
  7. REVOKE privilege ON 库名.表名 FROM 用户名@主机;

    注意:[REVOKE SELECT ON *.* FROM ‘pig’@’%’]不能撤销[GRANT SELECT ON test.user TO ‘pig’@’%’]对用户pig的SELECT授权;[REVOKE SELECT ON test.user FROM ‘pig’@’%’]不能撤销[GRANT SELECT ON *.* TO ‘pig’@’%’]对用户pig的SELECT授权

备注:

  • 对列名编制前缀索引:

对于CHAR和VARCHAR类型的列,只用列的一部分就可创建索引。创建索引时,使用“列名(length)”语法对前缀编制索引,意为前缀包括每列值的前length个字符,例如:

CREATE INDEX customer_index ON customer (name(10));

对列名编制前缀索引的好处是减小索引文件的大小,有可能提高INSERT操作的速度。

BLOB和TEXT列也可以编制索引,但是必须给出前缀长度。

前缀最长为255字节。对于MyISAM和InnoDB表,前缀最长为1000字节。注意前缀的限长以字节计,而CREATE INDEX语句中的前缀长度指的是字符的数目。对于使用多字节字符集的列,在指定列的前缀长度时,要考虑这一点。

在MySQL中,只有使用MyISAM, InnoDB或BDB表类型时,才可以向有NULL值的列及BLOB或TEXT类型的列建立索引。

一个索引列可以以ASC或DESC为结尾。这些关键词将来可以扩展,用于指定递增或递减索引值存储。目前,这些关键词被分析,但是被忽略;索引值均以递增顺序存储,例如:

CREATE INDEX customer_index ON customer (name(10) DESC);

 
  • 索引类型:
  • 存储引擎

    允许的索引类型

    MyISAM

    BTREE

    InnoDB

    BTREE

    MEMORY/HEAP

    HASH, BTREE

FULLTEXT索引只能对CHAR, VARCHAR和TEXT列编制索引,并且只能在MyISAM表中编制。

SPATIAL索引只能对空间列编制索引,并且只能在MyISAM表中编制。

  • 关于索引创建

向表的列添加唯一约束和主键约束时也会为这些列默认创建索引。

MySQL常用功能语句分类总结的更多相关文章

  1. MySQL常用经典语句

    http://www.cnblogs.com/see7di/archive/2010/04/27/2239909.html MySQL常用经典语句 .重命名表ALTER TABLE tbl1 RENA ...

  2. mysql 常用 sql 语句 - 快速查询

    Mysql 常用 sql 语句 - 快速查询 1.mysql 基础 1.1 mysql 交互         1.1.1 mysql 连接             mysql.exe -hPup    ...

  3. php面试专题---MySQL常用SQL语句优化

    php面试专题---MySQL常用SQL语句优化 一.总结 一句话总结: 原理,万变不离其宗:其实SQL语句优化的过程中,无非就是对mysql的执行计划理解,以及B+树索引的理解,其实只要我们理解执行 ...

  4. Mysql常用sql语句(九)- like 模糊查询

    测试必备的Mysql常用sql语句,每天敲一篇,每次敲三遍,每月一循环,全都可记住!! https://www.cnblogs.com/poloyy/category/1683347.html 前言 ...

  5. Mysql常用sql语句(19)- in / exists 子查询

    测试必备的Mysql常用sql语句系列 https://www.cnblogs.com/poloyy/category/1683347.html 前言 子查询在我们查询方法中是比较常用的,通过子查询可 ...

  6. Mysql 常用 SQL 语句集锦

    Mysql 常用 SQL 语句集锦 基础篇 //查询时间,友好提示 $sql = "select date_format(create_time, '%Y-%m-%d') as day fr ...

  7. mysql常用操作语句

    mysql常用操作语句 1.mysql -u root -p   2.mysql -h localhost -u root -p database_name 2.列出数据库: 1.show datab ...

  8. Mysql 常用 SQL 语句集锦 转载(https://gold.xitu.io/post/584e7b298d6d81005456eb53)

    Mysql 常用 SQL 语句集锦 基础篇 //查询时间,友好提示 $sql = "select date_format(create_time, '%Y-%m-%d') as day fr ...

  9. 23个MySQL常用查询语句

    23个MySQL常用查询语句 一查询数值型数据: SELECT * FROM tb_name WHERE sum > 100; 查询谓词:>,=,<,<>,!=,!> ...

随机推荐

  1. Mycat入门及简单规则

    以下都来自网络: 官网: http://www.mycat.io/ 官网配置文件解析: https://github.com/MyCATApache/Mycat-Server/wiki/9.0-%E6 ...

  2. Rabbitmq 基本属性

    MQ全称为Message Queue, 是一种分布式应用程序的的通信方法,它是消费-生产者模型的一个典型的代表,producer往消息队列中不断写入消息,而另一端consumer则可以读取或者订阅队列 ...

  3. VS文件发布不了,这样设置可以解决

    在VS里面新增一些文件的时候,往往发布的时候会发布不了,比如:(*.rdlc,*.p12).在项目里面,这些项目已经包含在项目里了,但是发布后,会发现这些文件并没有被发布出来 解决办法:邮件选择文件, ...

  4. oracle中的分支与循环语句

    分支语句 if的三种写法一, if 2 < 1 then dbms_output.put_line('条件成立'); end if; 二, if 2 < 1 then dbms_outpu ...

  5. cdoj第13th校赛初赛A - AC Milan VS Juventus 【枚举】

    http://acm.uestc.edu.cn/#/contest/show/54 A - AC Milan VS Juventus Time Limit: 3000/1000MS (Java/Oth ...

  6. Python issubclass() 函数

    Python issubclass() 函数  Python 内置函数 描述 issubclass() 方法用于判断参数 class 是否是类型参数 classinfo 的子类. 语法 以下是 iss ...

  7. fusioncharts 破解方法(转载)

    FusionCharts是一个Flash的图表组件,它可以用来制作数据动画图表,其中动画效果用的是Adobe Flash 8 (原Macromedia Flash的)制作的flash , Fusion ...

  8. node.js压缩版 Windows安装

    1.下载 下载地址:https://nodejs.org/zh-cn/download/ 选择相应的版本下载 2.解压缩 将文件解压到要安装的位置,并新建两个目录 node-global :npm全局 ...

  9. program by the way......

    ostrich birds fruit apple constructor height weight method overload override base sub inherit extend ...

  10. 中介者模式(QQ聊天室我觉得是个很生动的例子简单易懂)

    设计模式之中介者模式(Mediator) 一.初识中介者模式 那些年,我们一起上过的大学,班级里有班长,有团书记.想一想如果没有QQ这种通讯工具的话,那么班长或者团支书该怎样下达消息呢??同时,班级上 ...