最近看前辈们的代码,发现了一个没有接触过的类型:serial。

下面是关于serial的官方介绍:

SERIAL is an alias for BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE.

SERIAL DEFAULT VALUE in the definition of an integer column is an alias for NOT NULL AUTO_INCREMENT UNIQUE.

下面以我初过四级的水平解释一下:

SERIAL 是一个拥有非空、自增、唯一性等约束的长整型无符号数的别名。

整型数列SERIAL 的默认值是非空、自增、唯一等约束的别名

也就是类型为serial的值即拥有非空、自增、唯一性等约束!

当然,也有别的自增方法,例如使用关键字auto_increment:

create table t_user(

id int(10) primary key auto_increment,

name varchar(32) not null

);

在使用自增类型之后,测试时往往会遇到一些问题。编写测试类插入数据时,数据就会自增,等到项目上线时,数据库的自增已经进行了一部分了。

即使你将所有数据全部删除。下次插入仍然会接着之前的数据累加,如下图:

如上图,即使我提前设置sum为0,再插入数据也不是以0为起点。

– 清除所有的记录,并且索引号从0开始

TRUNCATE TABLE questions RESTART IDENTITY CASCADE;

执行上面的语句,再进行插入,自增序列即从0开始。

mysql serial 类型_Mysql自增类型serial相关推荐

  1. mysql数据库表中的类型_MySQL数据库中表类型MyISAM与InnoDB的区别

    MyISAM 和 InnoDB 讲解 InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定.基本的差别为:MyISAM类型不支持事务处理等高级处 ...

  2. mysql float 误差_mysql下float类型使用一些误差详解

    单精度浮点数用4字节(32bit)表示浮点数 采用IEEE754标准的计算机浮点数,在内部是用二进制表示的 如:7.22用32位二进制是表示不下的. 所以就不精确了. mysql中float数据类型的 ...

  3. mysql 常用的列类型_MySQL 常用列类型

    日期和时间类型为DATETIME.DATE.TIMESTAMP.TIME和YEAR. 注意:在MySQL中,日期时间值使用单引号引起来. 相当于Java中Date,Calender. 最常用的整数类型 ...

  4. mysql数据库数字类型_Mysql 数据库数值类型详解

    MySQL 支持所有标准SQL 中的数值类型,其中包括严格数值类型(INTEGER.SMALLINT.DECIMAL 和NUMERIC),以及近似数值数据类型(FLOAT.REAL 和DOUBLE P ...

  5. mysql blob 字段_mysql BLOB字段类型用法介绍

    在mysql中,BLOB类型的字段用于存储二进制数据. MySQL中,BLOB是个类型系列,包括:TinyBlob.Blob.MediumBlob.LongBlob. 这几个类型之间的唯一区别: 存储 ...

  6. mysql自增类型_Mysql自增字段

    1.关键字 auto_increment 2.自增用法 例: CREATE TABLE animals ( id mediumint not null auto_increment, name cha ...

  7. mysql 主键类型_MySQL 主键类型的考量

    作为一个微服务的开发者, 通常都要自己来负责数据库表的创建.一个常见的问题是, 如何定义主键的类型? 通常我们会有两种做法. 1)主键选长整型, 并且自增的. 2)主键选择UUID类型.对于Mysql ...

  8. mysql timestamp 转型_MySQL的timestamp类型自动更新问题【转】

    今天建了一个表,里面有一个列是timestamp类型,我本意是在数据更新时,这个字段的时间能自动更新.岂知对这个类型的值还不甚了解,导致出错.发现这个字段只是在这行数据建立的时候有值,在更新的却无变化 ...

  9. mysql字符串字段类型_MySQL字符串字段类型选择的一般规则

    1.       经常变化的字段用char 2.       知道固定长度的用char 3.       尽量用varchar 4.       超过255字节的只能用varchar或者text 5. ...

最新文章

  1. Go 学习笔记(34)— Go 方法声明、方法调用、方法值、方法表达式、切片对象方法、指针对象方法
  2. tomcat线程释放时间_聊下并发和Tomcat线程数(错误更正)
  3. Java instanceof运算符
  4. 万字总结webpack实战案例配置
  5. 数据持化技术的发展演变(SQL、JDBC、mybatis)
  6. Android 系统(78)---《android framework常用api源码分析》之 app应用安装流程
  7. 现在开始做一些什么事情可以在五年以后大为收益? Answer by FindProz.com Co-founder
  8. python-mysql数据插入与查询
  9. 微信公众号开发之微信买单
  10. iOS 图形处理 翻译
  11. 图像大小批量调整工具Image Resizer for Mac
  12. 计算机信息安全工程师教材,第三级 安全标记保护级-信息安全工程师教材
  13. Matlab R2019a Win64位 迅雷下载链接
  14. Eclipse下载及汉化(官方最新)
  15. python爬取饿了么评论_爬虫实例:饿了么爬虫
  16. 9.0系统XPOSED框架安装经验
  17. python运行环境怎么配置_python配置环境 菜鸟教程,python的运行环境怎么配置
  18. json vs jsonb,及常用
  19. vue生成条形码和二维码并打印
  20. Python cv2读取/存储图片中含中文路径失败的解决方法

热门文章

  1. 淘宝怎么做推广?史上最全的淘宝流量入口整理
  2. linux下运行omnet,Linux中安装OMNeT++过程
  3. python爱好者社区公众号历史文章合集_精心整理 |人工智能爱好者社区历史文章合集(作者篇)...
  4. LVM的常用操作【创建lvm】
  5. 在web服务器上运行jsp文件
  6. mysql month函数值类型_MySQL常用函数(分类别整理)
  7. XP和Java大战,谁胜一筹?
  8. iconfont-阿里巴巴矢量库使用说明
  9. HINSTANCE初了解
  10. Kylin Docker 无法启动的问题 EXITED 139