- 数据库操作
一.查询数据库
SHOW DATABASE();
二.查询所有数据库
SELECT DATABASE();
三.创建数据库
CREATE DATABASE [IF NOT EXISTS] 数据库名字 [DAFAULT 字符集] [collate 排序规则];
四.删除数据库
DROP DATABASE[IF EXISTS]数据库名;
五.选择数据库
USE 数据库名;
- 表操作
一.创建表
create table 表名 {
列名,数据类型,约束条件
};
二.查看表定义
desc 表名;
show create table 表名 G;;
*以上语句除了可以看到表定义以外,还可以看到表的engine(存储引擎)和charset(字符集)*
三.删除表
drop table 表名;
四.修改表(重要)
1.修改表类型
ALTER TABLE 表名 MODIFY [COLUMN] column_definition [FIRST | AFTER col_name];
例如,修改表 stud 的 st_name 字段定义,将 varchar(10)改为 varchar(20)
mysql> alter table Stud modify st_name varchar(20);
2. 增加表字段
ALTER TABLE 表名 ADD [COLUMN] [FIRST | AFTER col_name];
例如,表 stud 上新增加字段 st_test,类型为 int(5)
mysql> alter table stud add column st_test int(5);
3. 删除表字段
ALTER TABLE 表名 DROP [COLUMN] col_name
例如,将字段 st_test 删除掉
mysql> alter table Stud drop column st_test;
4. 字段改名
ALTER TABLE 表名 CHANGE [COLUMN] old_col_name column_definition [FIRST|AFTER col_name];
例如,将 st_sex 改名为 st_sex0,同时修改字段类型为 int(5)
mysql> alter table Stud change st_sex st_sex0 int(5);
*change 和 modify 都可以修改表的定义,不同的是 change 后面需要写两次列名,不方便。但是 change 的优点是可以修改列名称,modify 则不能*
5. 修改字段排列顺序
在(ADD/CNAHGE/MODIFY)中后面括号里面的可选项first|after column_name,这个选项可以用来修改字段在表中的位置
alter table 表名 add 列名 数据类型 after 列名;
例如,将新增的字段 st_test 加在 st_id 之后
mysql> alter table Stud add st_test date after st_id;
*默认 ADD 增加的新字段是加在表的最后位置,而 CHANGE/MODIFY 默认都不会改变字段的位置*
修改已有字段 st_name,将它放在最前面
mysql> alter table Stud modify st_name varchar(20) default ” first;
注意:CHANGE/FIRST|AFTER COLUMN 这些关键字都属于 MySQL 在标准 SQL 上的扩展,在其他数据库上不一定适用。
6.表名修改
ALTER TABLE 表名 RENAME [TO] new_tablename;
例如,将表 Stud 改名为 stud
mysql> alter table Stud rename stud;