Bootstrap

SQL语言操作mysql数据库

SQL语言操作mysql数据库

一、库操作:所有的数据库语句都必须以分号结尾,没分号默认是同个操作指令

  • 创建数据库$ create database 数据库名称;
    • 后面的数据库名称必须使用`包裹起来,不能使用引号demo`
  • 容错创建数据库:$ create database if not exists demo;
    • if not exists会判断是否存在该名称的数据库,不存则创建存在则发出警告,如果没有加上
      此判断,数据库已经存在的时候会报错;
  • 创建数据库同时设置基本选项信息:$ create database demo default charset=gbk;
  • 查看所有数据库:$ show databases;
  • 条件查找数据库: $ show databases like 条件字符串;
    • 条件字符串用引号包裹不能使用“包裹
    • 条件字符串里面的百分号表示匹配任意多个字符包括空(零个字符)比如我们有一个demo为名称的数据库,‘%o%’可以匹配出来
    • 条件字符串里面的表示匹配一个字符不能为空,比如‘___’四个下划线表示匹配数据库名称长度为4个字符的数据库
  • 查看数据库创建时候的资料:$ show create database数据库名;
    • 后面的数据库名称必须使用`包裹起来,不能使用引号demo`
  • 修改数据库选项:$ alter database demo charset=utf8;
  • 删除数据库:$ drop database demo;
  • 容错删除数据库:$ drop database if exists demo;

二、表操作:

  • 创建表:$ create table 表名(name: type)

    $ create table 表名称(
    字段名: 存储类型,
    )
    比如: create table demo.base_info(
    large int,
    name varchar(30)
    )
    a.创建之前如果没有使用$ use ‘数据库名称’,进入某个数据库中再创建表,就必须在表名称前
    面加上属于哪个数据库的前缀,
    b.large是表基本字段的名称,int是表示这个字段的值类型是整型,varchar(30)则表示字段的值为字符类型长度最大为30个字符
  • 查看某数据库所有表:$ show tables;
  • 条件查找表:$ show tables like ‘%info’;
  • 查看表创建信息:$ show create table base_info\G;
    • 其中\G是表示分行显示;
  • 查看表结构:$ desc base_info;
    • show columns from base_info;(必须进入某个数据库或者指定为某个数据库的某张表)
  • 修改表字段数据存储类型或者长度名称:$ alter table 表名 modify 字段名 数据格式
    • $ alter table base_info modify base_name varchar(40);
  • 修改表字段名称:$ alter table 表名 change 原字段名称 新字段名称 数据存储格式;
    • $ alter table base_info change base_name basename varchar(40);
  • 添加表字段在指定位置:$ alter table 表名 add 字段名称 数据存储格式;
    • $ alter table base_info add add_info varchar(20) after 表中已存在的字段名称;
  • 删除表字段:$ alter table base_info drop add_info ;
  • 向表插入数据:$ insert into 表名 values(‘zhang’,2);
    • 其中的values()括号中的数据分别按照字段名称进行填入所有字段值都必须设置,
  • 查看表数据:$ select * from base_info;
  • 复制表:
    • 复制表结构:$ create table like base_info;
    • 复制表结构和数据:$ create table base_copy2 select * from base_info;
  • 修改表名:$ rename table 原表名 to 新表名;
    • $ rename table base_info to base_rename;修改后原表消失
  • 表信息互换值:$ rename table base_info to base_temp base_info to base_info1
    base_rename to base_info1;
    • 将base_info的数据和base_info1的数据交换;
  • 删除表:$ drop table if exists base_info;
;