MySQL学习笔记-----Navicat设置建表
id 主要设置有bigint 和int两种 长度一般都是20
字符 主要设置varchar 长度 我一般设置 255
时间 主要是设置为timestamp 混合日期和时间值,时间戳 ,建议在java端的DT
1.数据库字段设置 id 主要设置有bigint 和int两种 长度一般都是20 字符 主要设置varchar 长度 我一般设置 255 时间 主要是设置为timestamp 混合日期和时间值,时间戳 ,建议在java端的DTO或者request设置时间格式 判断状态 比如mybatis-plus的逻辑删除 建议设置为tinyint 长度为1 就行 大文本 text一般都够用了 2.利用Navicat建库 字符集建议设置成utf8m64, 排序规则: utf8_general_ci:不缺分大小写,核对速度快,准确度稍差 utf8_general_cs:区分大小写 utf8_bin:字符串每个字符串用二进制数据编译存储。 区分大小写创建数据库表,而且可以存二进制的内容 utf8_unicode_ci:准确度高,但校对速度稍慢 3.利用Navicat建表 主键id一定要把自增加上,不然在插入时候会报错 一张表必须有主键, 建议把字段的注释写上, 表注释 4.用Navicat设置约束(索引) 假设我们表中的邮箱email不能重复的 UNIQUE:唯一,用于保证该字段的值具有唯一性,可以为空。例如注册用户的手机号,身份证号等。(唯一经常用) FULLTEXT:全文索引 表示全文收索,在检索长文本的时候,效果最好,短文本建议使用Index,但是在检索的时候数据量比较大的时候,现将数据放入一个没有全局索引的表中,然后在用Create Index创建的FULLTEXT索引,要比先为一张表建立FULLTEXT然后在写入数据要快的很多 NORMAL :普通索引 表示普通索引,大多数情况下都可以使用 SPATIAL :空间索引 空间索引是对空间数据类型的字段建立的索引,MYSQL中的空间数据类型有4种,分别是GEOMETRY、POINT、LINESTRING、POLYGON。MYSQL使用SPATIAL关键字进行扩展,使得能够用于创建正规索引类型的语法创建空间索引。创建空间索引的列,必须将其声明为NOT NULL,空间索引只能在存储引擎为MYISAM的表中创建 索引方法:有BTREE和HASH选择,我一般用BTREE, 最后一句别忘了写注释 5.设置字段默认值 6.设置自动增长初始值 alter table 表名AUTO_INCREMENT 2000; 7.设置外键(可以用于权限设置比较) 1.cascade方式 在父表上update/delete记录时,同步update/delete掉子表的匹配记录 2.set null方式 在父表上update/delete记录时,将子表上匹配记录的列设为null 要注意子表的外键列不能为not nul川 3.No action方式 如果子表中有西配的记录,则不允许对父表对迹侯选键进行update/delete操作 4.Restrict方式 同no action,都是立即检查外键约束 5.Set default方式 父表有变更时,子表将外键列设置成一个默认的值但nnodb不能识别 (编辑:武汉站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |