SQlite:unix时间戳的列格式;整数类型

发布时间:2020-07-24 发布网站:脚本之家
脚本之家收集整理的这篇文章主要介绍了SQlite:unix时间戳的列格式;整数类型脚本之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
原来的问题:
unix时间戳的正确列格式是什么?

网络充满了混乱:一些帖子声称SQLite没有无符号类型 – 无论是什么,或者除了64位int类型(但是有(反)示例调用UNSIGNED INTEGER).数据类型页面仅在一个bigint示例中提到它.它还声称有一个6字节的整数,但没有给它一个名称.看来,我尝试使用INTEGER是4字节签名的存储unix时间戳作为负数.我听说有些系统返回64位时间戳. OTOH我不太喜欢浪费4个字节来存储1个额外的位(时间戳的顶部),即使我必须选择更大的数据格式,我宁愿去6字节.我甚至看到一个声明SQLite unix时间戳的帖子是REAL …

完成问题:
有人可以澄清一下吗?

一个整数的大小

SQLite数据库中的所有列都是内部可变宽度的. file format以1,2,3,4,6或8个字节存储整数,取决于数字大小,标题中加上一个字节来指示大小.因此,总共存储为整数的Unix日期将占用5个字节,直到2038-01-19和7个字节为止.

从C API的用户的角度来看,所有的整数都是64位的.

列类型

您是否将列列为INTEGER,UNSIGNED INTEGER,BIGINT或其他内容无关紧要. Anything with “INT” in it has integer affinity.而且,如上所述,所有整数都是64位的,但通常不是这样存储的.

总结

以上是脚本之家为你收集整理的SQlite:unix时间戳的列格式;整数类型全部内容,希望文章能够帮你解决SQlite:unix时间戳的列格式;整数类型所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您喜欢交流学习经验,点击链接加入脚本之家官方QQ群:1065694478
脚本之家官方公众号

微信公众号搜索 “ 程序精选 ” ,选择关注!

微信公众号搜索 “ 程序精选 ”
精选程序员所需精品干货内容!