SQL

MySQL概述
SQL
函数
约束
多表查询
事务

1、SQL 通用语法


image.png

2、SQL 分类


image.png

3、DDL


image.png

-查询
查询所有数据库
SHOW DATABASES;
查询当前数据库
SELECT DATABASE();

-创建
CREATE DATABASE;

(create database itheima default charset utf8mb4;) utf8mb4 四个字节 utf8 3个字节 等于 一个汉字

-删除
DROP DATABASE [IF EXISTS] 数据库名;

-使用
USE 数据库名;

DDL-表操作-查询


image.png

-查询当前数据库所有表
SHOW TABLES;

-查询表结构
DESC 表名;

-查询指定表的建表语句
SHOW CREATE TABLE 表名;

DDL-表操作-创建


image.png

CREATE TABLE 表名 (
字段1 字段1类型 [ COMMENT 字段1注释],
字段2 字段2类型 [ COMMENT 字段2注释],
字段3 字段3类型 [ COMMENT 字段3注释],
) [ COMMENT 表注释];

DDL-表操作-数据类型


image.png

数据类型-三类:数值类型、字符串类型、日期时间类型。

image.png

signed(有序的) / unsigned(无序的)

age TINYINT UNSIGNED

score DOUBLE(4,1) (长度,小数位数)

image.png

带text的是用来描述文本数据
带blob的是用来描述二进制数据,(比如,视频、音频、软件的安装包等)进行存储
在开发过程当中,不这样去做,原因是性能并不高,而且不方便管理;
那么对于这类的二进制数据,常会采用专门的文件服务器进行存储。

char(10) // 定长字符串,当前字符串,能够存储的最大长度是多长
varchar(10) // 变长字符串,

image.png
image.png
create table emp(
  id int comment '编号',
  workno varchar(10) comment '工号',
  name varchar(10) comment '姓名',
  gender char(1) comment '性别',
  age tinyint unsigned comment '年龄',
  idcard char(18) comment '身份证号',
  entrydate date comment '入职时间'
) comment '员工表';
image.png

DDL-表操作-修改


image.png

添加字段
ALTER TABLE 表名 ADD 字段名 类型(长度)[COMMENT 注释] [约束];

案例:
为emp 表增加一个新的字段”昵称“为 nickname, 类型为varchar(20)

 alter table emp add tickname varchar(20) comment '昵称';

DDL-表操作-修改


image.png

修改数据类型
ALTER TABLE 表名 MODIFY 字段名 新数据类型(长度)

修改字段名和字段类型
ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型(长度) [comment 注释] [约束];

案例:
将emp表的nickname 字段 修改为 username, 类型为 varchar(30)

alter table emp change nickname username varchar(30) comment '用户名';

DDL-表操作-修改


image.png

删除字段
ALTER TABLE 表名 DROP 字段名;

案例:
将emp表的字段username删除;

alter table emp drop username;

4、DML
5、DQL

6、DCL

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容