SQL
SQL(Structure Query Language) 结构化查询语言,是关系型数据语言的标准,使用SQL通过数据库管理系统来操作数据库中的数据。
SQL分类
- DDL(Data Definition Language):数据定义语言,用来操作数据库对象:库、表、列等;
- DML(Data Manipulation Language):数据操作语言,用来增删改数据库中的数据;
- DCL(Data Control Language):数据控制语言,用来设置访问权限和安全级别;
- DQL(Data Query Language):数据查询语言,用来查询数据库中的数据。
DDL
1.操作数据库
注意:指令要加分号 (;)
- 创建数据库:
create database mydata ; - 指定字符编码:
create database mydata2 character set gbk; - 查看数据库:
show databases; - 查看数据的定义信息:
show create database mydata; - 修改数据库:
将mydata2数据库的编码修改为utf-8;
alter database mydata2 character set utf8; - 删除数据库:
drop database mydata2; - 查看当前使用的数据库:
select database(); - 切换数据库:
use study2;
2.操作数据库表
- 创建表语法:
create table 表名(
字段1 字段类型,
字段2 字段类型,
...
字段n 字段类型
);
- 常用的字段数据类型:
int:整型
double:浮点型,例如double(5,2)表示最多5位,其中必须有2位小数,即最大值为999.99;
char:固定长度字符串类型; char(10) 如果不足10位则会自动补足10位:'abc '
varchar:可变长度字符串类型;varchar(10) 如果不足10位不会补足:'abc',性能不如char高
text:字符串类型;适用于大文本内容。
blob:字节类型;
date:日期类型,格式为:yyyy-MM-dd;
time:时间类型,格式为:hh:mm:ss
timestamp:时间戳类型 yyyy-MM-dd hh:mm:ss 会自动赋值
datetime:日期时间类型 yyyy-MM-dd hh:mm:ss
- 查看数据库中所有的表:
show tables; - 查看表的字段信息:
desc student; - 在上面员工表的基本上增加一个address列:
alter table student add address varchar(1000);
- 修改name列,使其长度为30:
alter table student modify name varchar(30); - 删除address列,一次只能删一列:
alter table student drop address; - 表名改为user:
rename table student to user; - 查看表格的创建细节:
show create table user; - 修改表的字符集为gbk:
alter table user character set gbk; - 列名name修改为username:
alter table user change name username varchar(20); - 删除表:
drop table user;