mysql教程之学会设计表
小编:啊南 166阅读 2020.11.21
这节课教大家学会设计mysql表。
//表定义
CREATE TABLE `test` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `title` varchar(32) NOT NULL DEFAULT '' COMMENT '标题', `catid` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '分类', PRIMARY KEY (`id`), KEY `catid` (`catid`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='测试';
一、存储引擎
InnoDB 优先考虑
更安全 支持事务和行级锁 处理大数据的时候更有优势
MyISAM
支持表级锁 对于读多写少的小型网站更合适
二、列类型
1.数值类型
整型 TINYINT 、SMALLINT 、MEDIUMINT、INT、BIGINT
定点 DECIMAL(5,2) 高精度
符点 FLOAT(7,4)
数值类型 unsigned 无符号>0
2、日期和时间类型
DATETIME '1983-09-05 13:28:00' 到9999
TIMESTAMP '1983-09-05 13:28:00' 1970或晚于2037
DATE '1983-09-05'
3、string类型
CHAR 长度可以为从0到255的任何值
VARCHAR 0到65,535
TEXT 2的16次方
MEDIUMTEXT 2的24
三、表定义sql
CREATE DATABASE if not exists test_php default charset=utf8mb4; drop database test_php; CREATE TABLE `test` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `title` varchar(32) NOT NULL DEFAULT '' COMMENT '标题', `catid` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '分类', PRIMARY KEY (`id`), KEY `catid` (`catid`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=COMPACT COMMENT='测试'; alter table add column `catid` smallint unsigned NOT NULL DEFAULT '0' COMMENT '分类'; modify column `catid` int unsigned NOT NULL DEFAULT '0' COMMENT '分类'; change `catid` `catid2` int unsigned NOT NULL DEFAULT '0' COMMENT '分类'; add index catid_id(catid,id) drop index catid; drop table;
相关推荐
- MySQL|Aborted connection 日志分析 一 前言作为运维DBA,我们经常会在数据库的err.log中查看到如下种类的报错信息:[Warning] Aborted connection xx to db: db user: xxx host: hostname (Got an error reading communication packets)[Warning] Aborted connection xx to db:unconnected user: …
- 3DMAX提示和技巧 本主题标识使用 Civil View 的一些重要提示和技巧。常规使用屏幕分辨率至少为 1280x1024 的 Civil View。低于此分辨率时,一些面板将占用过多屏幕空间。 将视口设置为线框显示以达到最佳性能。 要尽可能简化用户界面,请在单个视口中工作并关闭 3ds Max 命令面…