目录与学习目标
1:操作database的SQL2:操作表结构的SQL(重要) 1:修改表结构(注意会锁表) 2:查看表结构 3:创建数据库下的表 4:查看某个数据库下的表3:建表列属性说明
1:操作database的SQL
1:查看当前mysql数据库管理软件中的所有数据库show databasename;2:查看建库语句SHOW CREATE DATABASE databasename;3:创建数据库CREATE DATABASE databasename CHARSET utf8mb4 COLLATE utf8mb4_bin;4:删除数据库DROP DATABASE databasename;5:修改数据库字符集ALTER DATABASE databasename CHARSET utf8mb4;
2:操作表结构的SQL(重要)
1:修改表结构(注意会锁表)
1:修改表名称 rename table 旧表名 to 新表名; alter table 旧表名 rename 新表名; rename table t_stu to student; alter table student rename t_stu;
2:修改表结构 alter table 表名称 add 【column】 字段名 数据类型; #默认添加到最后 alter table 表名称 add 【column】 字段名 数据类型 first; #添加到第一列的位置 alter table 表名称 add 【column】 字段名 数据类型 after 另一个字段; #添加到另一个字段的后面 alter table t_stu add tel char(11); alter table t_stu add address varchar(50) first; alter table t_stu add age int after sname;
3:修改字段的数据类型或位置 alter table 表名称 modify 【column】 字段名 新的数据类型; #修改数据类型 alter table 表名称 modify 【column】 字段名 数据类型 first; #将指定字段移动到第一列 alter table 表名称 modify 【column】 字段名 数据类型 after 另一个字段; #移动指定字段到另一个字段的后面 alter table t_stu modify tel char(11); alter table t_stu add address varchar(50) first; alter table t_stu modify age int after sname;
4:修改列的名称 alter table 表名称 change 【column】 旧字段名 新的字段名 数据类型; alter table t_stu change tel phone char(11);
5:删除一列 alter table 表名称 drop 【column】 字段名; alter table t_stu drop address;
2:查看表结构
desc 表名称;
3:创建数据库下的表
创建某个表,如果前面有use语句,那么【数据库名.】可以省略 create table 【数据库名.】表名称(字段名1 数据类型,字段名2 数据类型,字段名3 数据类型);
DROP TABLE IF EXISTS `actor`;CREATE TABLE `actor` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(45) DEFAULT NULL, `update_time` datetime(0) NULL DEFAULT NULL, PRIMARY KEY (`id`) USING BTREE) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;
执行后的表结构

DROP TABLE IF EXISTS `actorother`;
CREATE TABLE `actorother` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(45) DEFAULT NULL,
`update_time` datetime(0) NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) CHARSET=utf8;
执行后的表结构

ENGINE=InnoDB :MySQL数据库存储引擎的设置,如果不写也是可以的会去取默认的数据引擎
AUTO_INCREMENT=10 : 如果不写则默认自增从1开始,否则从设置的值开始
CHARSET=utf8 :作用于该表的字符编码 如果不写则为CHARSET=latin1 (ISO-8859-1编码格式)
4:查看某个数据库下的表
方式一:
需要先use 数据库名
show tables;
方法二:
show tables from 数据名;
3:建表列属性说明
| 列属性 |
说明 |
| PRIMARY KEY |
主键约束,表中只能有一个,非空且唯一. |
| NOT NULL |
非空约束,不允许空值 |
| UNIQUE KEY |
唯一键约束,不允许重复值 |
| DEFAULT |
默认约束,一般配合 NOT NULL 一起使用. |
| UNSIGNED |
无符号,一般是配合数字列,非负数 |
| AUTO_INCREMENT |
自增长的列 |
| COMMENT |
注释 |