一.MySQL 常见数据类型
类型分类 | 类型 | 取值范围或描述 | 示例 |
整数类型 | tinyint | 0 ~255 | 员工年龄:32 |
smallint | -32768~32767 | 员工数:2540 | |
int | -2147483648~2147483647 | 中国人口数:1354040000 | |
小数类型 | decimal | decimal(5,2)表示小数的取值范围是-999.99~999.99 | 商品单价:892.35 |
定长字符串类型 | char | char(10) 表示字符串存储 10 个字符,即便该字符串只有一个字符, 它所占用的存储空间也是 10 个字符空间大小 | 公司名:HUAWEI |
变长字符串类型 | varchar | varchar(10) 表示字符串最多存储10 个字符,如果该字符串仅包含一个字“中”,那么它所占用的存储空间也只是一个字符空间大小。定义 varchar 类型可节省存储空间 | 公司地址:武汉洪山区珞瑜路 546 路光谷科技会展中心 |
类型分类 | 类型 | 取值范围或描述 | 示例 |
日期类型 | date | 格式:YYYY-MM-DD(年 - 月- 日)取值范围:1000-01-01 ~ 9999-12-31 | 出生日期:1982-03-24 |
日期类型 | time | 格式:HH:MM:SS(时 : 分钟 : 秒)取值范围:-838:59:59 ~ 838:59:59 注意:时间不限当天 | 早晨上班时间:08:30:00 |
datetime | 格式:YYYY-MM-DD HH:MM:SS 取 值 范 围:1000-01-01 00:00:00 ~ 9999-12-31 23:59:59 | 登 机 时 间:2015-05-1214:35:0 |
那么下面就来举个例子吧:
线路号 | 所属分公司 | 起点站 | 终点站 | 线路长度(km) | 车辆数 |
502 | 公交六公司 | 黄州街 108 街坊 | 桥口码头 | 23.7 | 15 |
503 | 公交二公司 | 文馨街文昌街口 | 沿江大道青岛路口 | 22.5 | 20 |
541 | 公交三公司 | 江盛路长江紫都 | 长丰大道东风村 | 27.3 | 17 |
605 | 公交三公司 | 古田二路翠堤春晓 | 梨园广场 | 24.4 | 16 |
607 | 公交四公司 | 园林路钢都花园 | 玉龙路朱家亭 | 28.2 | 19 |
609 | 公交五公司 | 沿河大道桥口码头 | 南湖公交场站 | 18.2 | 14 |
620 | 公交二公司 | 康居五路 | 汉黄路岱家山 | 16.2 | 12 |
线路表表结构
字段名 | 说 明 | 类 型 | 长 度 |
lineNo | 线路号 | varchar | 10 |
company | 所属分公司 | varchar | 20 |
from_station | 起点站 | varchar | 20 |
to_station | 终点站 | varchar | 20 |
miles | 线路长度 | decimal(3,1) | — |
number | 车辆数 | smallint | — |
这里需要注意:线路号虽然显示为数字,但不宜采用数字类型,只能是字符串类型。因为线路号与身份证号类似,不仅有一定的编码规则,还可能出现字母。
然后利用 Navicat for MySQL 创建表
表名:line
最后使用 Navicat for MySQL 维护数据表结构
就这样一个完整表格就建好啦~
下面再和大家说说数据完整性:
为了防止不符合规范的数据进入数据库,在用户对数据进行插入、修改以及删除等操作时,DBMS 自动按照一定的约束条件对数据进行监测,使不符合规范的数据不能进入数据库,以确保数据库中存储的数据正确、有效、相容。 数据完整性用于保证数据库中的数据在逻辑上的一致性、正确性和可靠性。
数据完整性主要包含:实体完整性、域完整性和参照完整性。
实体完整性规定表的每一行记录在表中是唯一的
实体完整性主要包含主键约束和唯一约束。
主键约束(Primary Key Constraint)用于唯一识别每一条记录,数据表中具有唯一值的字段可设定为主键字段。
唯一约束(Unique Constraint):如果某个字段满足唯一性约束要求,则可以向该字段添加唯一性约束。
与主键约束相比,唯一约束也用于确保列中不存在重复值,但其列值可以是 null。
看完记得收藏哦~ (●'◡'●)