首页 > 技术文章 > MySQL基本语句

snailgirl 2018-03-06 16:00 原文

1 库

2 表

3 记录

4 查看帮助

5 权限管理


1 库

    数据库命名规则:

  • 可以由字母、数字、下划线、@、#、$
  • 区分大小写
  • 唯一性
  • 不能使用关键字如 create select
  • 不能单独使用数字
  • 最长128位
操作文件夹(库)
    增
        create database db1 charset utf8;
    查
        show databases;
        show create database db1; #查看指定库 也就看库的字符编码#不能改库名
        alter database db1 charset gbk;
    删
        drop database db1;

2 表

操作文件(表)
    切换文件夹:
use db1; select database();
#查看当前所在的库 #最后不能有逗号 create table t1( id int, name char )engine=innodb; 查 show tables; show create table t1; desc t1; #describe t1,查看表结构 show create table t1\G; #查看表详细结构,可加\G 改 alter table t1 add sex char; #增加sex字段 alter table t1 add age int after name; #在name字段后面增加age字段 alter table t1 add age int first; #在最开始增加age字段 alter table t1 drop sex; #删除字段 alter table t1 modify name char(16); #不能改字段名 只能改属性 alter table t1 change name Name char(13); #可以更改字段名 alter table t1 rename t11; #改表名 alter table t1 engine=innodb; #修改存储引擎 删 drop table t1; 复制表 create table new_service select * from service; #复制表结构+记录(key不会复制:主键、外键和索引) create table new1_service select * from service where 1=2; #只复制表结构 条件为假查不到任何数据 create table t4 like employees; #只复制表结构

3 记录

操作文件的内容(记录)
    增
        insert into db1.t1 values
        (1,'egon'),
        (2,'alex'),
        (3,'wxx');
    查
        select id,name from db1.t1;
        select * from db1.t1;
    改
        update t1 set name='SB' where id=2;
    删
        delete from t1 where id=2; #删某几条记录就用delete
清空表:
        delete from t1; #如果有自增id,新增的数据,仍然是以删除前的最后一样作为起始。
        truncate table t1;#数据量大,删除速度比上一条快,且直接从零开始,

        auto_increment 表示:自增
        primary key 表示:约束(不能重复且不能为空);加速查找

4 查看帮助

查看帮助:
help create

5 权限管理

权限管理
user #该表放行的权限,针对:所有数据,所有库下所有表,以及表下的所有字段
db #该表放行的权限,针对:某一数据库,该数据库下的所有表,以及表下的所有字段
tables_priv #该表放行的权限。针对:某一张表,以及该表下的所有字段
columns_priv #该表放行的权限,针对:某一个字段

 

推荐阅读