iMisty的技术栈

iMisty的技术栈

MySQL基础之数据库相关操作

942
2019-06-15

数据库相关操作

数据库的相关操作

创建数据库

*   SQL语句: `CREATE (DATABASE | SCHEMA) db_name;`
*   检测数据库名称是否存在,不存在则创建 `CREATE DATABASE IF NOT EXISTS db_name;`

    > 若是数据库存在则会有一条警告信息 ,用

SHOW WARNINGS; 查看警告信息
* 创建数据库的同时指定编码方式 CREATE DATABASE IF NOT EXISTS db_name DEFAULT CHARACTER SET 'UTF8|GBK';

    > 注意:  1.数据库的名称最好有意义,不可以包含特殊字符或者是mysql关键字,若是有则需要 `` 包裹;

2.不要写成 "UTF-8"

  1. 数据库相关操作

  • SHOW SCHEMAS;

  • SHOW DATABASES;查看当前服务器下全部数据库

  • 查看数据库的详细信息,主要是数据库的字符编码 SHOW CREATE DATABASE db_name;

  • 修改指定数据库的编码方式 ALTER DATABASE db_name [DEFAULT] CHARACTER SET [=] "UTF8";

  • 打开指定的数据库 USE db_name ;

  • 得到当前打开的数据库 SELECT SCHEMA(); 或者 SELECT DATABASE();

  • 删除指定的数据库 DROP DATABASE [IF EXISTS] db_name;或者采用存在删除的方式;

    数据表相关操作

  • 查看指定数据库下的所有表 show [full] tables from|in db_name ,此方法不用打开数据库

  • 查看建表时的详细信息 show create table table_name;

  • 查看指定表结构,以下三者都一样
    -desc table_name;
    -describe table_name;
    -show columns from table_name;

  • 删除指定表 drop table [if exists] user;

常用的Sql语句

  • 查看上一步操作产生的警告信息 SHOW WARNINGS; 查看警告信息

完整性约束条件

  • unsigned 无符号 没有负数,从0开始

  • zerofill 零填充,当数据显示长度不够的时候可以使用前补0的效果填充至指定长度

  • not null 非null约束,也就是插入值的时候这个字段必须要给值

  • default 默认值,如果插入记录的时候没有给字段赋值,则使用默认值

  • primary key 主键 ,标识记录的唯一性,值不能重复,一个表只能有一个主键,不允许为null

  • unique key 唯一索引,一个表中可以有多个字段是唯一索引,同样的值不能重复,但是可以有多个

  • auto_increment 自动增长,只用于数值列,而且配合索引使用

  • foreign key 外键约束