(三)MySQL数据库-表的创建和删除
程序员文章站
2022-05-30 17:45:36
...
我的系统版本为CentOS7.5,MySQL版本为5.7.26
表的创建
格式:CREATE TABLE table_name (column_name column_type);
CREATE TABLE `datebaseName`.`tableName ` (
`id` int(0) UNSIGNED NOT NULL AUTO_INCREMENT,
`name` char(16) NOT NULL DEFAULT '',
`email` varchar(255) NOT NULL DEFAULT '',
`crdate` datetime,
PRIMARY KEY (`id`)
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci;
-
在创建表时通常都指定一个主键索引PRIMARY KEY (
id
),一个表只能有一个主键索引,即使不指定mysql也会生成一个隐藏的主键索引,以后单独说为什么 -
主键索引设置为非负自增(从1开始每条加1):UNSIGNED NOT NULL AUTO_INCREMENT
-
字段中默认值最好不是为NULL,后续程序中不好处理,如果设置非空但是不指定默认值的话插入数据时如果是空值会报错
-
存储引擎设置为innodb:ENGINE = InnoDB,常用的有myisam和innodb,后面单独说区别
-
和创建库一样指定字符集和排序: CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci;
删除表
DROP TABLE tableName ;
查看表
#查看库下有哪些表
SHOW TABLES
#查看表结构
SHOW COLUMNS FROM tableName ;
修改表
删除字段
ALTER TABLE tableName DROP 字段名;
增加字段
#在表的末位增加字段i
ALTER TABLE tableName ADD i INT;
#在表的首位增加字段i
ALTER TABLE tableName ADD i INT FIRST;
#在表的c字段后增加字段i
ALTER TABLE tableName ADD i INT AFTER c;
修改字段
#将i字段改名为j,类型为bigint
ALTER TABLE tableName CHANGE i j BIGINT;
#将name字段类型改为 char(16)
ALTER TABLE tableName CHANGE name char(16);
修改表名
ALTER TABLE tableName RENAME TO new_tableName ;
修改存储引擎
#修改为myisam
alter table tableName engine=myisam;
删除外键约束
#keyName是外键别名
alter table tableName drop foreign key keyName;
修改字段的相对位置
alter table tableName modify name1 type1 first(after) name2;
上一篇: 传智健康项目讲义第三章 四
下一篇: 传智健康项目讲义第七章 四