数据库的基本操作

数据库的基本操作

一、数据库语句操作

  1. 查看已有的数据库

格式: show databases;

  1. 选择某个数据库

格式:use 数据库名;

eg>>: use db;

  1. 查看当前所在的数据库

格式:select database();

  1. 创建数据库

格式: create database 数据库名 [charset="编码格式"];

eg>>: create database db charset="utf8";

  1. 查看数据库创建的语句

格式:show create database 数据库名;

eg>>: show create database db;

  1. 删除数据库

格式:drop database 数据库名

eg>>: drop database db

二、修改数据编码数据库

  1. 修改数据库字符编码

格式: alter database 数据库名 charset="字符编码";

eg>>: alter database db charset=''utf8";

  1. set修改字符编码

格式:set names 'utf8';

三、用户对数据库权限操作(重要)

  1. 为特定用户分配数据库权限

格式:grant 权限1,权限2...权限n on 数据库.表 to 用户名@“主机名” identified by '密码';

注释:

1)all:所有权限,select, drop, update....

2)db*:db数据库下所有表

3)randysun@'localhost':本机可以通过randysun用户登入

4)identified by '123':密码为123

eg>>: grant all on *.* to randysun@'localhost' identified by '123';

  1. 为用户分配数据库指定权限

格式:grant 权限1,权限2...权限n on 数据库.表 to 用户名@“主机名” identified by '密码';

eg>>: grant select, update, delete,select, insert on db.* to randy@"localhost" identifyed by '123456';

  1. 撤销权限

格式:revoke 权限1,权限2...权限n 数据库名.表名 from 用户名@’主机名‘;

eg>>: revoke delete on db.* from randy@'localhost'';

  1. 删除用户

格式: drop user 用户名@’主机号‘;

eg>>: drop user randy@'localhost';

四、数据库的模式

mysql 5.6 以后默认都是安全模式

  1. mysql 5.6 版本
  1. 非安全性,默认

sql_model=no_engine_substitution

  1. 安全性

sql_model=strict_trans_tables

  1. 查看当前数据库模式

格式:show variables like "%sql_mode%"; # %匹配0~n个任意字符 => 模糊查询

  1. 临时设置安全模式(重启服务后被重置)

格式:set global sql_mode='模式';

eg>>:set global sql_mode="strict_trans_tables";

注:1) 在root用户登录状态下

​ 2)在设置后,quit断开数据库连接后(服务器不重启)就会进入安全模式

  1. 安全模式

安全模式下,非安全模式下sql执行的警告语句,都会抛异常

eg>: create table t1(name char(2));
eg>: insert into t1 values ("ab") # 正常
eg>: insert into t1 values ("owen") # 错误 Data too long for column 'name' at row 1

posted @ 2019-10-07 11:16  RandySun  阅读(590)  评论(0编辑  收藏  举报