mysql数据库管理

MySQL是一款深受欢迎的开源关系型数据库
Oracle旗下的产品
遵守了GPL协议,可以免费使用与修改
特点

  • 性能卓越、服务稳定
  • 开源、无版权限制、成本低
  • 多线程、多用户
  • 基于C/S(客户端/服务器)架构
  • 安全可靠
Mysql管理操作

数据库管理操作

  • 查看数据库结构
  • 创建及删除库和表
  • 管理表的记录
基本操作命令

查看数据库列表信息
show databases

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

 
 

    查看数据库中的数据表信息
    use 数据库名
    show tables;

    mysql> use mysql
    Reading table information for completion of table and column names
    You can turn off this feature to get a quicker startup with -A
    Database changed
    mysql> show tables;
    +---------------------------+
    | Tables_in_mysql           |
    +---------------------------+
    | columns_priv              |
    | db                        |
    ……
    
     
     

      显示数据表的结构(字段)
      describe [数据库名.]表名;

      mysql> describe user;
      +------------------------+-----------------------------------+------+-----+-----------------------+-------+
      | Field                  | Type                              | Null | Key | Default               | Extra |
      +------------------------+-----------------------------------+------+-----+-----------------------+-------+
      | Host                   | char(60)                          | NO   | PRI |                       |       |
      | User                   | char(32)                          | NO   | PRI |   
      ……
      
       
       
        SQL语句概述

        SQL语言

        • 是Structured Query Language的缩写,即结构化查询语言
        • 是关系型数据库的标准语言
        • 用于维护管理数据库,如数据查询、数据更新、访问控制、对象管理等功能

        SQL分类

        • DDL:数据定义语言
        • DML:数据操纵语言
        • DQL:数据查询语言
        • DCL:数据控制语言
        DDL语句操作

        DDL语句用于创建/删除数据库对象,如库、表、索引等
        使用DDL语句新建库、表

        • 创建数据库:create database 数据库名;
        • 创建数据表:create table 表名(字段定义);
        mysql> create database test;						//创建名为test的数据库
        Query OK, 1 row affected (0.00 sec)
        mysql> create table info(							//创建名为info的表
            -> id int(4) not null,							//设置字段id,长度为4且不能为空
            -> name char(10) not null,						//设置字段name,长度为10且不能为空
            -> address varchar(50) default '中国',			//设置字段address,设为可变长长度50,默认地址为“中国”
            -> primary key (id));							//设置id为主键
        Query OK, 0 rows affected (0.02 sec)
        
         
         

          使用DDL语句删除库、表

          • 删除指定的数据表:drop table [数据库名.]表名;
          • 删除指定的数据库:drop database 数据库名;
          DML语句操作

          DML语句用于对表中的数据进行管理
          包括以下操作

          • insert:插入新数据
          • update:更新原有数据
          • delete:删除不需要的数据

          向数据表中插入新的数据记录

          • insert into 表名(字段1,字段2,…) values(字段1的值,字段2的值,…);
          mysql> insert into info (id,name,address) values (1,'zhangsan','南京');	
          Query OK, 1 row affected (0.02 sec)
          mysql> insert into info (id,name,address) values (2,'lisi',default);	//地址段中,设为默认值,加上default,不要为空
          Query OK, 1 row affected (0.01 sec)
          
           
           

            修改、更新数据表中的数据记录

            • update 表名 set 字段1=值1[,字段名2=值2] where 条件表达式;
            • 不带where条件的语句表示更改表中所有记录(谨慎操作)
            mysql> update info set address='北京' where id=1;	
            Query OK, 1 row affected (0.01 sec)
            Rows matched: 1  Changed: 1  Warnings: 0
            
             
             

              在数据表中删除指定的数据记录

              • delete from 表名 where 条件表达式;
              • 不带where条件的语句表示删除表中所有记录(谨慎操作)
              mysql> delete from info where id=2;
              Query OK, 1 row affected (0.02 sec)
              
               
               
                DQL语句操作

                DQL是数据查询语句,只有一条:select
                用于从数据表中查询符合条件的数据记录
                查询时可不指定条件

                • select 字段1,字段2… from 表名;
                // * 表示查询所有,写字段名可以查询指定字段
                mysql> select * from info;
                +----+----------+---------+
                | id | name     | address |
                +----+----------+---------+
                |  1 | zhangsan | 北京    |
                +----+----------+---------+
                1 row in set (0.00 sec)
                
                 
                 

                  查询时指定条件

                  • select 字段名1,字段名2 … from 表名 where 条件表达式;
                  mysql> select name from info where id=1;
                  +----------+
                  | name     |
                  +----------+
                  | zhangsan |
                  +----------+
                  1 row in set (0.00 sec)
                  
                   
                   
                    DCL语句操作

                    设置用户权限(用户不存在时,则新建用户)
                    grant 权限列表 on 数据库名.表名 to 用户名@来源地址 [ identified by '密码' ];

                    mysql> grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
                    Query OK, 0 rows affected, 1 warning (0.00 sec)
                    
                     
                     

                      查看用户权限
                      show grants for 用户名@来源地址;

                      mysql> show grants for 'root'@'%';
                      +-------------------------------------------------------------+
                      | Grants for root@%                                           |
                      +-------------------------------------------------------------+
                      | GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION |
                      +-------------------------------------------------------------+
                      1 row in set (0.00 sec)
                      
                       
                       

                        撤销用户的权限
                        revoke 权限列表 on 数据库名.表名 from 用户名@来源地址;

                        mysql> revoke all on *.* from 'root'@'%';
                        Query OK, 0 rows affected (0.00 sec)
                        
                         
                         
                          案例:建立公司IT运营部工资表

                          需求描述

                          • 为公司建立员工工资数据库 imployee_salary
                          • 在imployee_salary数据库中,建立IT_salary数据表,以保存IT运营部员工的工资信息,如下表所示

                          在这里插入图片描述
                          操作步骤
                          1、安装mysql数据库
                          2、建立数据库
                          在这里插入图片描述
                          3、建立数据表并插入字段
                          在这里插入图片描述在这里插入图片描述
                          4、添加数据记录
                          在这里插入图片描述
                          5、查看数据表
                          在这里插入图片描述

                          • 0
                            点赞
                          • 2
                            收藏
                            觉得还不错? 一键收藏
                          • 1
                            评论

                          “相关推荐”对你有帮助么?

                          • 非常没帮助
                          • 没帮助
                          • 一般
                          • 有帮助
                          • 非常有帮助
                          提交
                          评论 1
                          添加红包

                          请填写红包祝福语或标题

                          红包个数最小为10个

                          红包金额最低5元

                          当前余额3.43前往充值 >
                          需支付:10.00
                          成就一亿技术人!
                          领取后你会自动成为博主和红包主的粉丝 规则
                          hope_wisdom
                          发出的红包
                          实付
                          使用余额支付
                          点击重新获取
                          扫码支付
                          钱包余额 0

                          抵扣说明:

                          1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
                          2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

                          余额充值