1、DDL: 数据库定义语言
定义对象:库、表
何为定义:
库的定义:
创建
删除
修改---->修改本身以及库中的对象(表、视图、函数、触发器...)
表的定义:
创建---->定义表的结构
删除---->对于表本身
修改---->只针对表的结构
例:
-----库:
create database if not exists oldboy character set utf8(charset utf8);
show create database oldboy;
show character set;
修改数据库的定义:
alter database oldboy charset utf8 collate=utf8_general_ci;(修改字符集)
删库:
drop database oldboy;
切库:
use oldboy;
----表:
create table t1(列 列定义... , ...);
列定义:
数据类型-----数字、字符...
约束类型-----主键、外键...
列属性-------(必须怎样)空、非空、有符号、无符号...
create table t1(id int(20) not null)engine=MyIASM;
show create table t1;
查看表结构: desc t1;
更改表名称;
rename table t1 to t2;
alter table t1 rename t1 to t2;
修改表结构:
增加列:
alter table t1 add sex char(4) not null;
alter table t1 add sex char(4) after name;
alter table t1 add sex char(4) first;
alter table t1 add sex char(4) not null, age int(20) not null;
删除列:
alter table t1 drop name;
修改列类型:
alter table t1 modify age char(4) after name;
修改列名称:
alter table t1 change age nainling char(4) after name;
2、DCL:数据库控制语言
控制用户、权限
3、DML: 数据库操作语言(对真实数据的操作)
表内容的操作----> 增 删 改 查
insert delete update select
例:
create table t1 (id int(4) not null auto_increment, name char(20), primary key(id));
insert into t1(id, name) values(1,'oldboy');
select * from t1;
delete from t1; (***如果不加where则全部删除!)
delete from t1 where id=1;
update t1 set name='zyh' where id=10; (***如果不加where则全部修改!)
--------------------------------------------------------------------------------------------------------
int(数字):
***int里面的数字表示显示宽度,和存的数值没有关系!