美文网首页
MySQL基本命令

MySQL基本命令

作者: 我思故我在2020 | 来源:发表于2020-02-19 12:53 被阅读0次

    MySQL基本命令

    1. 检查 MySQL 服务器是否启动

    ps -ef | grep mysqld
    

    2. 启动 MySQL 服务器

    cd /usr/bin
    ./mysqld_safe &
    

    3. 关闭 MySQL 服务器

    cd /usr/bin
    ./mysqladmin -u root -p shutdown
    Enter password:******
    

    4. 登录

    mysql [-hhost] -uroot -p
    Enter password:******
    

    5. 创建用户并授权

    create user 'username'@'%' identified by 'password';
    grant privileges on databasename.tablename to 'username'@'%';
    

    6. 更改用户密码

    set password for 'username'@'%' = PASSWORD('newpassword');
    

    设置当前登录用户密码

    set password = PASSWORD('newpassword');
    

    7. 撤销用户权限

    revoke privileges on databasename.tablename to 'username'@'%';
    

    8. 删除用户

    drop user 'username'@'%';
    

    9. 列出数据库列表

    show databases;
    

    10. 选择要操作的数据库

    use database;
    

    11. 创建数据库

    create database 数据库名;
    

    12. 删除数据库

    drop database 数据库名;
    

    13. 显示指定数据库的所有表

    show tables;
    

    14. 显示表的列信息

    show columns from table;
    

    15. 显示表的索引

    show index from table;
    

    16. 创建表

    create table 表名 (
        列名 列属性,
        列名 列属性,
        ...
    )
    

    例:

    create table if not exists `user` (
        `id` int unsigned auto_increment,
        `name` varchar(100) not null,
        `loginName` varchar(100) not null,
        `password` varchar(100) not null,
        `createOn` date,
        primary key (`id`)
    )engine=innoDB defalut charset=utf8;
    

    17. 删除表

    drop table 表名;
    

    18. 插入数据

    insert into 表名 (列1, 列2, 列3, ...列N)
                values 
                ( value1, value2, value3, ...valueN);
    

    18. 查询语句

    select 列1, 列2, 列3 from 表名 
    [Where 子句] 
    [Limit N] 
    [Offset M];
    

    使用 Where 子句指定查询条件
    使用 Limit 属性设定返回的记录数
    使用 Offset 属性设定开始查询的数据偏移量,默认情况下偏移为 0

    19. 更新语句

    update 表名 set 列1=值1, 列2=值2, 列3=值3 
    [Where 子句];
    

    20. 删除语句

    delete from 表名
    [Where 子句]
    

    21. Like 子句

    我们知道,在 Where 子句中可以使用等号=来设定获取数据的条件。但有时我们需要根据一个字段是否含有某子串来获取数据,这个时候就需要用到 Like 子句。
    Like子句中使用百分号%来表示任意字符。

    Where 列名 Like '%somevalue%'
    

    22. Union 操作符

    Union 操作符用来连接两个以上的 Select 语句的结果到一个结果集中,多个 Select 语句会删除重复的数据。

    Select expression1, expression2, ... expressionN
    from tables
    [Where conditions]
    Union [ALL | DISTINCT]
    Select expression1, expression2, ... expressionN
    from tables
    [Where conditions]
    

    23. Order By 子句

    select field1, field2, ... fieldN from table1, table2 ...
    order by field1 [, field2] [ASC [DESC]]
    

    24. Group By 子句

    select column_name, function(column_name) 
    from table_name
    where conditions
    Group byb column_name;
    

    25. 在 Where 子句中,如何判断 NULL 值

    Where column_name Is NULL
    
    Where column_name is not NULL
    

    26. 正则表达式

    我们已经知道,MySQL 可以通过 Like ... % 来进行模糊匹配。
    MySQL 同样支持正则表达式的匹配,MySQL 使用 REGEXP 操作符来进行正则表达式的匹配。

    Where column_name REGEXP '正则表达式'
    

    27. 连接的使用 (JOIN)

    待补充

    28. ALTER 命令

    修改数据表名或者修改数据表字段

    删除字段

    alter table 表名 drop 字段名;
    

    添加字段

    alter table 表明 add 字段名 字段属性;
    

    修改字段属性

    alter table 表名 modify 字段名 新属性;
    

    修改字段名和属性

    alter table 表名 change 原字段名 新字段名 新属性;
    

    修改字段默认值

    alter table 表名 alter 字段名 set default 默认值;
    

    删除字段默认值

    alter table 表名 alter 字段名 drop default;
    

    修改表名

    alter table 表名 rename to 新表名;
    

    29. 索引

    普通索引

    创建

    create index 索引名 on 表名(列名(length))
    

    修改表结构(添加索引)

    alter table 表名 add index 索引名(列名)
    

    创建表时直接指定

    create table mytable (
        id int not null,
        username varchar(16) not null,
        index [索引名] (username(length))
    );
    

    删除索引

    drop index 索引名 on 表名;
    

    唯一索引

    创建

    create unique index 索引名 on 表名(列名(length))
    

    修改表结构

    alter table 表名 add unique [索引名] (列名(length))
    

    创建表时直接指定

    create table 表名 (
        id int not null,
        username varchar(16) not null,
        unique [索引名] (username(length))
    );
    

    显示索引信息

    show index from 表名;
    

    相关文章

      网友评论

          本文标题:MySQL基本命令

          本文链接:https://www.haomeiwen.com/subject/mecafhtx.html