内容摘自菜鸟教程,根据本人自身情况记录部分知识点。一来为了巩固所学过的知识,二来方便日后复习。
创建数据库
使用 create 命令创建数据库,语法如下:
CREATE DATABASE 数据库名;
删除数据库
使用 drop 命令删除数据库,语法如下:
Drop database 数据库名;
Mysql数据类型
Mysql数据类型包括数值、日期/时间和字符串(字符)类型。
数值类型
- 严格数值数据类型:INTGER、SMALLINT、DEDECIMAL和NUMERIC
- 近似数值数据类型:FLOAT、REAL和DOUBLE PRECISION
日期和时间类型
包括DATETIME、DATE、TIMESTAMP、TIME和YEAR。
每个时间类型有一个有效值范围和一个"零"值,当指定不合法的MySQL不能表示的值时使用"零"值。
类型 | 格式 |
---|---|
DATE | YYYY-MM-DD |
TIME | HH-MM-SS |
YEAR | YYYY |
DATETIME | YYYY-MM-DD HH-MM-SS |
TIMESTAMP | YYYYMMDD HHMMSS |
字符串类型
包括CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT、ENUM和SET。
汉字的长度与编码有关:
UTF-8:1个汉字=3个字节
GBK:1个汉字=2个字节
char、varchar、text的区别:
- char:定长,长度范围为0-255字节,内容长度不足255时,用空格填充储存。
- varchar:变长,长度范围为0-65535字节。
- text:长度范围为0-65535字节,不可以有默认值。
tips:
- 常变化字段用varchar
- 知固定长且长度不超过255用char
- 尽量使用varchar
- 长度超过255用varchar或text
- 能用varchar不用text
创建数据表
语法:
Create table 表名(字段名 字段类型);
空值“”和NULL的区别:
- 空值不占空间
- NULL占空间
任何数跟NULL运算都是NULL;
判断是否等于NULL,不可用=,要用is NULL关键字。
插入数据
语法:
insert into 表名 (字段1,字段2,…字段n) value (值1,值2,…值n)
查询数据
语法:
select 字段名1,字段名2 from 表名 [where condition]
查询所有字段:“*”表示所有字段
select * from 表名 [where comdition]
更新数据
语法:
update 表名 set 字段1=值1,字段2=值2,…,字段n=值2 [where condition]
对字段a数据进行局部数据替换:
update 表名 set 字段a=replace(字段a,被替换的字符串,新字符串)
删除数据
语法:
delect from 表名 [where condition];
若无where子句,将删除表中所有记录。
tips:delete只删除表数据,drop把表结构和数据都删除。
delete,drop,truncate区别:
- delete和truncate仅删除数据表数据,drop连同表数据和表结构一并删除。
- delete是DML语句,皂搓完成以后可以回滚。truncate和drop是DDL语句,操作完成马上生效,不能回滚。
- 执行速度:drop—>truncate—>delete