sql分类
- DDL (Data Definition Language)语句:数据定义语言。create drop alert等
- DML(Data Manipulation Language)语句:数据操作语句。 insert delete update和select等
- DCL(Data Control Language)语句:数据控制语句。grant revoke等
? 登陆数据库:root为用户名
mysql -uroot -p?
DDL语句
1.创建数据库
create database dbname # dbname是数据库名称
2.删除数据库
drop database dbname # dbname是数据库名
?3.创建表
create table tablename(
column_name_1 column_type_1 constraints_1,
column_name_2 column_type_2 constraints_2,
column_name_3 column_type_3 constraints_3,
......
column_name_n column_type_n constraints_n)
# tablename 表名
# column_name_? 字段名
# column_type_? 字段类型
# constraints_? 字段约束
查看表的定义
desc tablename # tablename 表名
4.删除表
drop table tablename # tablename 表名
5.修改表(用的不多)
1.添加字段
alter table tablename add [column] column_definition [first/after col_name]
# tablename 表名
# column_definition 字段定义(在此处个人理解为字段类型)
# col_name 字段名
2.修改字段类型
alter table tablename modify [column] column_definition [first/after col_name]
# tablename 表名
# column_definition 字段的定义(在此处个人理解是字段的类型)
# col_name 字段名
3.删除字段
alter table tablename drop [column] col_name
# tablename 表名
# col_name 字段名
4.字段改名
alter table tablename change [column] old_col_name new_col_name column_definition [first/after col_name]
# tablename 表名
# old_col_name 旧的字段名
# new_col_name 新的字段名
# column_definition 字段的定义(在此处个人理解是字段的类型)
# col_name 字段名
注意:change 和 modify 都可以修改表的定义,不同的是 change 后面要接两次字段名,不方便,但 change 可以修改字段名,modify则不能
5.修改字段顺序
前面的(add/change/modify)?中,后面的first|after column_name,可以修改;
例如:
alter table tablename add col_name_1 column_definition first|after col_name_2
# 添加字段 col_name_1 并把字段 col_name_1 放在最前面,或者放在字段 col_name_2 后面
alter table tablename modify col_name_1 col_name_1_definition first|after col_name_2
# 把字段 col_name_1 放在最前面或者 col_name_2 后面
6.更改表名
alter table tablename rename [to] new_tablename
# tablename 旧表名
# new_tablename 新表名
|