一、使用MySQL数据库

1. 登录MySQL

   命令: mysql -h 主机名 -u 用户名 -p

  • -h : 该命令用于指定客户端所要登录的MySQL主机名, 登录当前机器该参数可以省略;
  • -u : 所要登录的用户名;
  • -p : 告诉服务器将会使用一个密码来登录, 如果所要登录的用户名密码为空, 可以忽略此选项。

二、DDL(数据定义语言)

1. 操作数据库

    1.1 创建数据库:create database 数据库名 character set utf8;

    1.2 删除数据库:drop database 数据库名;

    1.3 修改数据库:alter database 数据库名 character set utf8;

    1.4 查看所有数据库:show databases;

    1.5 切换(选择要操作的)数据库:use 数据库名;

2. 操作表

     2.1  创建表:

                   create table 表名(

                 列名 列类型,

                 列名 列类型,

                 ...

                列名 列类型,

                    );

     2.2  删除表:drop table 表名;

     2.3  查看表结构:desc(describe)表名;或者show columns  from 表名;

     2.4  查看当前数据库中所有表名称:show tables;

     2.5  查看指定表的创建语句:show create table 表名;

     2.6  前缀:alter table 表名

       ◆ 添加列 alter table 表名 add 列名 列数据类型 [after 插入位置];

       ◆ 修改列类型 alter table 表名 modify 列名 列数据类型;

       ◆ 修改列名 alter table 表名 change 原列名 新列名 列类型;

       ◆ 删除列  alter table 表名 drop 列名;

       ◆ 修改表名称 alter table 原表名 rename to(可写可不写) 新表名;

3. 数据类型

  ● int: 整型 

  ● double: 浮点型,例如double(5,2)表示最多5位,其中必须有2位小数,即最大值为999.99

  ● decimal:浮点型,在表单钱方面使用该类型,因为不会出现精度缺失类型

  ● char:固定长度字符串类型  char(255),数据的长度不足指定长度,补足到指定长度

  ● varchar:可变长度字符串类型 varchar(65535) 

  ● text(clob):字符串类型

  ● blob:字节类型

  ● date:日期类型,格式为yy-MM-dd

  ● time:时间类型,格式为hh:mm:ss

  ● timestamp:时间戳类型

三、DML(数据库操作语言)增、删、改

1. 插入数据

insert [into] 表名 [(列名1, 列名2, 列名3, ...)] values (值1, 值2, 值3, ...);  

插入一条记录:insert into students values(NULL, "王刚", "男", 20, "13811371377");

插入部分数据, 不按照列的顺序插入:insert into students (name, sex, age) values("孙丽华", "女", 21);

 2. 修改数据

update 表名称 set 列名称=新值 where 更新条件;

例如:将id为5的手机号改为默认的"-": update students set tel=default where id=5;

 3. 删除数据

delete from 表名称 where 删除条件;

例如:删除id为2的行: delete from students where id=2;

      删除所有年龄小于21岁的数据: delete from students where age<20;

      删除表中的所有数据: delete from students;

truncate table 表名:truncate 是DDL语句,它是先删除drop该表,再create该表,而且无法回滚!!!

四、DCL(数据库控制语言)

 1.创建用户

create user 用户名@IP地址 identified by ‘密码’; 

登录:mysql -h 主机名 -u 用户名 -p

create user 用户名@‘%’ identified by ‘密码’;

 2.给用户授权

grant 权限1, .... , 权限n  on  数据库.*   to  用户名@IP地址

● 权限、用户、数据库

● 给用户分派在指定的数据库上指定的权限

● 例如:grant create,alter,drop,insert,update,delete,select on mydb1.* to user1@localhost

  给user1用户分派在mydb1数据库上的create,alter,drop,insert,update,delete,select权限

grant all on 数据库.*   to  用户名@IP地址

 给用户分派指定数据库上的所有权限

 3.撤销授权

revoke 权限1,...,权限n  on  数据库.*  from  用户名@IP地址

● 撤销指定用户在指定数据库上的指定权限

● 例如:revoke create,alter,drop on mydb1.* from user1@localhost

   撤销user1用户在mydb1数据库上的create,alter,drop权限

 4.查看权限

show grants for 用户名@IP地址

查看指定用户的权限

 5.删除用户

 drop user 用户名@IP地址