zoukankan      html  css  js  c++  java
  • 【风马一族_mysql】mysql基本指令

    船停在港湾是很安全的,但那不是造船的目的!

    用户

    1. 创建用户
      1. mysql>grant 权限(select,insert,update,delete) on  数据库.数据表  to  用户名@电脑的地址  identified by "用户的密码" 
        1. 权限  【有四种权限】
          1. select      查询
          2. insert      插入
          3. update    修改
          4. delete  删除 
        2. 数据库.数据表 【有四种写法】  
          1. *.*           表示所有数据库与所有数据表          所有
          2. *.user          表示所有数据库的user表               某个表的数据库
          3. mysql.*        表示数据库mysql的所有数据表       某个数据库
          4. mysql.user  表示数据库mysql的数据库user表  某个数据库的某个数据表
        3. 用户名@电脑的地址
          1. 用户名          要创建的用户名称,不能跟原先的用户名相同
          2. 电脑的地址   mysql软件所在的电脑连接
            1. 在自己电脑使用时,用 127.0.0.1
            2. 与服务器的mysql交互时,用服务器的IP  
      2. mysql> grant select,insert,update,delete on mysql.* to ceosows@127.0.0.1 identif ied by "ceosows";
        Query OK, 0 rows affected (0.01 sec)
      3. mysql> grant select,insert,update,delete on *.* to ceosows@127.0.0.1 identif ied by "ceosows";
        Query OK, 0 rows affected (0.01 sec)
    2. 查看用户
      1. select * from 数据库.数据表
      2. select * from mysql.user            

    数据库常用的指令:

    1. 创建数据库
      1. mysql>create database 数据库名 ;
    2. 显示数据库
      1. mysql>show databases;
      2. +--------------------+
        | Database                |
        +--------------------+
        | information_schema   |
        | mysql                       |
        | performance_schema |
        | test                         |
        | twwq                       |
        | xhkdb                      |
        +--------------------+
        6 rows in set (0.02 sec) 
    3. 删除数据库
      1. drop database 数据库名;
      2. mysql> drop database twwq;
        Query OK, 0 rows affected (0.05 sec)
    4. 连接数据库
      1. use 数据库名;
      2. mysql>use twwq;
        Database changed
    5. 查看 当前连接的数据库
      1. mysql>select database();
        +------------+
        | database()  |
        +------------+
        | twwq          |
        +------------+
        1 row in set (0.00 sec)

    数据表的常用指令

    1. 创建表
      1. create table 表名(<字段名1> <类型1> [,..<字段名n> <类型n>]);        //警告:没有给表填加字段,会出错
      2. mysql> create table registered(id int(8) not null primary key auto_increment,
            -> username char(20) not nul
            -> password char(20) not null,
            -> repassword char(20) not null);
        Query OK, 0 rows affected (0.19 sec)
    2. 查看表
      1. mysql>desc 表名 ; (方式一)      mysql> show columns from 表名; (方式二)
      2. mysql>desc registered; (方式一)      mysql> show columns from registered;(方式二 )
        +------------+----------+------+-----+---------+----------------+
        | Field        | Type       | Null   | Key  | Default   | Extra               |
        +------------+----------+------+-----+---------+----------------+
        | id               | int(8)       | NO   | PRI   | NULL      | auto_increment |
        | username    | char(20)  | NO    |        | NULL      |                        |
        | password    | char(20)  | NO    |        | NULL      |                        |
        | repassword | char(20)  | NO    |        | NULL      |                        |
        +------------+----------+------+-----+---------+----------------+
        4 rows in set (0.01 sec)
    3. 修改表
      1. rename table (原先的)表名  to (修改后的)表;
      2. mysql> rename table registered to sows;
        Query OK, 0 rows affected (0.06 sec)
      3. 查看效果
        1. mysql> desc sows;
          +------------+----------+------+-----+---------+----------------+
          | Field        | Type       | Null   | Key  | Default   | Extra              |
          +------------+----------+------+-----+---------+----------------+
          | id               | int(8)      | NO    | PRI   | NULL     | auto_increment |
          | name          | char(20)  | YES  |         | NULL     |                        |
          | password    | char(20)  | NO    |        | NULL     |                        |
          | repassword | char(20)  | NO    |        | NULL     |                        |
          +------------+----------+------+-----+---------+----------------+
          4 rows in set (0.01 sec)      
    4. 删除表
      1. mysql>drop table 表名;            //警告:永久性删除数据表,慎用
      2. mysql>drop table registered;
        Query OK, 0 rows affected (0.05 sec)  
    5. 增加    alter add命令用来增加表的字段。
      1. 增添字段
        1. alter table 数据表 add 字段 参数 其他;
        2. mysql> alter table registered add sex char(2);
          Query OK, 0 rows affected (0.33 sec)
          Records: 0  Duplicates: 0  Warnings: 0
        3. 查看效果
          1. mysql> desc registered;
            +------------+----------+------+-----+---------+----------------+
            | Field           | Type        | Null   | Key | Default | Extra                 |
            +------------+----------+------+-----+---------+----------------+
            | id               | int(8)       | NO    | PRI | NULL    | auto_increment   |
            | username    | char(20)   | NO    |      | NULL    |                          |
            | password    | char(20)   | NO    |      | NULL    |                          |
            | repassword | char(20)   | NO    |      | NULL    |                          |
            | sex             | char(2)    | YES   |      | NULL    |                          |        //增加sex 字段
            +------------+----------+------+-----+---------+----------------+
            5 rows in set (0.01 sec) 
          2. mysql> desc registered;   
            ERROR 1146 (42S02): Table 'twwq.registered' doesn't exist   //原因表名被修改,因此原先的表名,无法使用了
      2. 修改字段
        1. alter table 数据表 change (要被修改的)字段  (修改后的)字段  参数;
        2. mysql> alter table registered change username name char(20);
          Query OK, 0 rows affected (0.33 sec)
          Records: 0  Duplicates: 0  Warnings: 0  
        3. 查看效果
          1. mysql> desc registered;
            +------------+----------+------+-----+---------+----------------+
            | Field           | Type       | Null    | Key  | Default  | Extra               |
            +------------+----------+------+-----+---------+----------------+
            | id               | int(8)      | NO     | PRI  | NULL     | auto_increment |
            | name          | char(20)  | YES   |        | NULL     |                        |        // username   修改成  name
            | password    | char(20)  | NO     |        | NULL     |                       |
            | repassword | char(20)  | NO     |         | NULL     |                      |
            | sex            | char(2)    | YES    |         | NULL     |                      |
            +------------+----------+------+-----+---------+----------------+
            5 rows in set (0.01 sec)   
      3. 删除字段
        1. alter table 数据表 drop 字段;
        2. mysql> alter table registered drop sex;
          Query OK, 0 rows affected (0.31 sec)
          Records: 0  Duplicates: 0  Warnings: 0
        3. 查看效果
          1. mysql> desc registered;
            +------------+----------+------+-----+---------+----------------+
            | Field           | Type       | Null    | Key  | Default  | Extra               |
            +------------+----------+------+-----+---------+----------------+
            | id               | int(8)      | NO    | PRI   | NULL     | auto_increment |
            | name          | char(20)  | YES  |        | NULL      |                        |
            | password    | char(20)  | NO    |        | NULL     |                        |
            | repassword | char(20)  | NO    |        | NULL      |                       |
            +------------+----------+------+-----+---------+----------------+   //sex 字段 已经被删除
            4 rows in set (0.01 sec)             
      4. 加索引  
        1. alter table 数据表 add index 索引名(【已经存在于表的】字段名);
        2. mysql> alter table registered add index sows_name(username);
          Query OK, 0 rows affected (0.17 sec)
          Records: 0  Duplicates: 0  Warnings: 0 
        3. 查看效果
          1. mysql> desc registered;
            +------------+----------+------+-----+---------+----------------+
            | Field           | Type       | Null    | Key | Default | Extra                 |
            +------------+----------+------+-----+---------+----------------+
            | id               | int(8)      | NO    | PRI   | NULL    | auto_increment  |
            | username    | char(20)  | NO    | MUL | NULL     |                        |   //Key 字段出现 MUL
            | password    | char(20)  | NO    |        | NULL     |                        |
            | repassword | char(20)  | NO    |        | NULL     |                        |
            | sex            | char(2)    | YES   |        | NULL     |                        |
            +------------+----------+------+-----+---------+----------------+
            5 rows in set (0.01 sec)  
      5. 删除索引
        1. alter table 数据表 drop index 索引名;
        2. mysql> alter table registered drop index sows_name;
          Query OK, 0 rows affected (0.15 sec)
          Records: 0  Duplicates: 0  Warnings: 0
        3. 查看效果
          1. mysql> desc registered;
            +------------+----------+------+-----+---------+----------------+
            | Field           | Type       | Null    | Key | Default   | Extra               |
            +------------+----------+------+-----+---------+----------------+
            | id               | int(8)      | NO    | PRI   | NULL     | auto_increment |
            | username    | char(20)  | NO    |        | NULL     |                        |  //key 字段的内容消失
            | password    | char(20)  | NO    |        | NULL     |                        |
            | repassword | char(20)  | NO    |        | NULL     |                        |
            | sex            | char(2)    | YES   |        | NULL     |                        |
            +------------+----------+------+-----+---------+----------------+
            5 rows in set (0.01 sec)                
    6. 插入数据
      1. mysql>insert into 数据表(字段  //如果已经实现步骤1,则不用再写字段) values (根据字段的数量,变量类型、变量长度要求、是否允许为空,来进行填写内容)
      2. mysql> insert into registered values (1,'sows','asqw1234','asqw1234'),(2,'ceo','
        aswe1322','aswe1322'),(3,'jk','qazxsw12','qazxsw12');
        Query OK, 3 rows affected (0.01 sec)
        Records: 3  Duplicates: 0  Warnings: 0      // 成功插入 3条数据
    7. 查看表中的数据    //准确性的查询所需数据
      1. mysql>select * from 数据表;                         //获取表中所有数据
        1. mysql>select * from  registered;
          +----+----------+----------+--------------+
          | id    | username | password | repassword |
          +----+----------+----------+--------------+
          |  1   | sows        | asqw1234 | asqw1234   |
          |  2   | ceo          | aswe1322  | aswe1322   |
          |  3   | jk            | qazxsw12  | qazxsw12   |
          +----+----------+----------+--------------+
          3 rows in set (0.00 sec)      //获取到3条数据


      2. mysql>select * from 数据表 order by id limit 从哪个位置开始,一共几条;
        1. mysql> select * from registered order by id limit 1,2;
          +----+----------+----------+------------+
          | id | username | password | repassword  |
          +----+----------+----------+------------+
          |  2 | ceo      | aswe1322 | aswe1322       |
          |  3 | jk       | qazxsw12 | qazxsw12        |
          +----+----------+----------+------------+
          2 rows in set (0.00 sec)     //获取两条数据
    8. 删除表中的数据
      1. mysql>delect from 数据表  where 条件限制 ;  
      2. mysql> delete from registered where id=1;
        Query OK, 1 row affected (0.01 sec)  //删除成功
      3. 使用5,查看删除的效果
        1. mysql> select * from registered;
          +----+----------+----------+------------+
          | id    | username | password | repassword |
          +----+----------+----------+------------+
          |  2    | ceo         | aswe1322 | aswe1322   |
          |  3    | jk           | qazxsw12 | qazxsw12   |
          +----+----------+----------+------------+
          2 rows in set (0.00 sec)   //id为1的数据被成功删除了  
    9. 修改表中的数据
      1. mysql>update 数据表 set (要修改数据的)字段=修改后的数据   where  条件限制
        1. mysql> update registered set username='sowsceo' where id=2;
          Query OK, 1 row affected (0.01 sec)                          //修改成功
          Rows matched: 1  Changed: 1  Warnings: 0     //修改的数量
        2. 查看修改后的效果
          1. mysql> select * from registered;
            +----+----------+----------+------------+
            | id | username | password | repassword |
            +----+----------+----------+------------+
            |  2 | sowsceo  | aswe1322 | aswe1322   |      //username 从ceo 变成 sowsceo
            |  3 | jk       | qazxsw12 | qazxsw12   |
            +----+----------+----------+------------+
            2 rows in set (0.00 sec)   
  • 相关阅读:
    NOIP201* 游记
    [Luogu3378] 【模板】堆 题解
    [BZOJ5105]【[Code+#1]晨跑】 题解
    牛客多校第九场 E All men are brothers 并查集/组合论
    牛客多校第九场 D Knapsack Cryptosystem 背包
    牛客多校第九场 B Quadratic equation 模平方根
    hdu多校第八场 1011 (hdu6667) Roundgod and Milk Tea 二分图匹配
    hdu多校第八场 1010(hdu6666) Quailty and CCPC 排序/签到
    hdu多校第八场 1003 (hdu6659) Acesrc and Good Numbers 数论/打表
    hdu多校第八场 1009 (hdu6665) Calabash and Landlord 计算几何/dfs
  • 原文地址:https://www.cnblogs.com/sows/p/5971198.html
Copyright © 2011-2022 走看看