SQL语句分类

名称解释命令
DDL(数据定义语言)定义管理数据的对象,对应库和表CREATE、DROP、ALTER
DML(数据操作语言)操作数据库中数据INSERT、UPDATE、DELETE
DQL(数据查询语言)查询数据库中数据SELECT
DCL(数据控制语言)数据权限、提交、回滚控制GRANT、COMMIT、ROLLBACK

本文主要设计对数据库和表的操作,即DDL数据定义语言介绍。

database操作

  1. 创建:create database if not exists name
  2. 删除:drop database if exists name
  3. 查看:show databases
  4. 使用数据库:use name

table操作

  1. 创建
    create table if not exists test(
     字段 类型 [属性] [索引] [注释]
    )[表类型][表字符集][注释]
    
    字段类型包括数值(int、float、double、decimal)、字符串、日期
    字段属性包括UnSigned、ZEROFILL、Auto_Increment、NULL、NOT NULL、DEFAULT
    表类型包括:MyISAMInnoDB、HEAP、BOB、CSV
  2. 删除
    drop table if exists 表名
  3. 修改
    修改表名:alert table 旧表名 rename as 新表名
    添加字段:alert table 表名 add 字段名 类型 [属性]
    修改字段:alert table 表名 modify 字段名 类型 [属性]
                      alert table 表名 change 旧字段名 新字段名 类型 [属性]
    删除字段:alert table 表名 drop 字段名
    

数据库、表操作涉及的知识点介绍

MyISAM、InnoDB对比

名称MyISAMInnoDB
事务处理不支持支持
数据行锁定不支持支持
外键约束不支持支持
全文索引支持不支持
表空间大小大,2倍

除以上对比,InnoDB还有安全保障特性

表目录

表以文件形式存放在磁盘中,包含:数据库选项文件表文件数据文件。位置为MySQL安装目录/data/数据库名/表
MyISAM表目录:

  • *.frm 表元数据文件
  • *.MYD 表数据文件
  • *.MYI 表索引文件
    InnoDB只有frm及上级目录里的ibdata1文件
    详细内容参考:InnoDB目录结构

设置表字符集

  • 创建表时通过命令来设置 , 如 : CREATE TABLE 表名()CHARSET = utf8;

  • 如无设定 , 则根据MySQL数据库配置文件 my.ini 中的参数设定

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐