DDL(Data Definition Language):数据定义语言,用来定义数据库对象:库、表、列等
对数据库操作
1)创建
create database 语句用于创建新的数据库:
//create database 数据库名
CREATE DATABASE mydb1;
//create database 数据库名
character set 编码方式 CREATE DATABASE mydb2 character SET GBK;
//create database 数据库名 set 编码方式 collate 排序规则
CREATE DATABASE mydb3 character SET GBK COLLATE gbk_chinese_ci;
2)查看数据库
查看当前数据库服务器中的所有数据库
show databases;
查看前面创建的mydb2数据库的定义信息
// show create database 数据库名;
show create database mydb2;
3)修改数据库
查看服务器中的数据库,并把mydb2的字符集修改为utf8;
alter database 数据库名 character set 编码方式;
alter database mydb2 character set utf8;
4)删除数据库
drop database 数据库名
drop database mydb3;
5)其他语句
查看当前使用的数据库
select database();
切换数据库:use 数据库名
use mydb2;
对数据表操作
1)创建数据表
create Table 语句用于创建新表。
语法:
create table 表名(
列名1 数据类型 [约束],
列名2 数据类型 [约束],
列名3 数据类型 [约束]
)
CREATE TABLE Employees(
id INT ,
age INT ,
first VARCHAR(255),
last VARCHAR(255)
);
常用的数据类型:
- int : 整型
- double:浮点型,例如 double(5,2)表示最多5位,其中必须有2位小数,即最大值为999.99;
默认支持四舍五入 - char:固定长度字符串类型;char(10) 'aaa ’ 占10位
- varchar:可变长度字符串类型;varchar(10) ‘aaa’ 占3位
- text:字符串类型,比如小说信息;
- blob:字节类型,保存文件信息(视频,音频,图片);
- time:时间类型,格式为:yyyy-MM-dd;
- timestamp:时间戳类型 yyyy-MM-dd hh:mm:ss 会自动赋值
- datetime:日期时间类型 yyyy-MM-dd hh:mm:ss
2)删除数据表
drop table 表名;
drop table table_name;
3)显示当前数据库的所有表
show tables;
4)查看表的字段信息
desc 表名;
DESC employee
5)增加列
alter table 表明 add 新列名 新的数据类型;
alter table employee ADD image blob;
6)修改列
alter table 表名 change 旧列名 新列名 新的数据类型
alter table 旧表名 rename 新表名;
// 修改job列,使其长度为60。
ALTER TABLE employee MODIFY job varchar(60);
ALTER TABLE employee change job job varchar(60);
// 列名name修改为username
ALTER TABLE user CHANGE name username varchar(100);
alter table user rename username;
7)删除列
alter table 表名 drop 列名
(一次只能删除一列)
ALTER TABLE employee DROP image;
8)查看表格的创建细节
show create table 表名;
SHOW CREATE TABLE user;
9)修改表的字符集
alter table 表名 character set 编码方式
ALTER TABLE user CHARACTER SET gbk;