SQLite3整数最大值
- sqlite3中数据typesINTEGER的最大值是多less?
- 你如何将IP地址存储在数据库中?
- 附件是什么?
- 如何使用sql ddl创build属于特定数据库的表?
- 这个错误是什么?
系统目录列表出现错误:no such table:temp.sqlite_master无法执行语句
- sqlite3文本数据typessupoports unicode? 谢谢。
- 看看http://www.sqlite.org/datatype3.html最大是2 ^ 63-1 = 9223372036854775807
- 我会认为你应该使用一个varchar
- http://www.sqlite.org/lang_attach.html
- http://www.sqlite.org/lang_createtable.html
- 可能会帮助SQLite“没有这样的表”的错误
一般来说,请查看sqlite文档
整数。 该值是一个有符号的整数,根据值的大小存储在1,2,3,4,6或8个字节中。
INTEGER存储类,例如,包括6个不同长度的整数数据types。 这在磁盘上有所不同。 但只要将INTEGER值从磁盘读取到内存中进行处理,它们就会转换为最常用的数据types(8字节有符号整数)。
从http://www.sqlite.org/datatype3.html
除非有其他原因,否则可以使用TEXT来存储IP地址。
关于第二个问题:
您可以通过以下两种方式将数据存储在数据库中:
- 作为一个string。 这是推荐的,因为它将支持IPv4和IPv6,并且不需要额外的IP地址转换麻烦。
- 作为一个整数。 IP基本上是4个字节,都可以合并成一个整数值。 但是,你真的想要吗? 这会给你任何时候都需要的痛苦把它转换成/从string的负载。
- 你如何将IP地址存储在数据库中?
最简单的方法是存储string格式(例如,“ 127.0.0.1
”或“ ::1
”),因为您可以手动读取它们并重新parsing为地址结构(如果必须的话)很容易。 SQLite喜欢string(使用TEXTtypes)并且有效地处理它们。
sqlite3文本数据types是否支持unicode?
是和不是。
是的,SQLite允许你以UTF-8或UTF-16存储TEXT
数据。 (使用PRAGMA编码select内部格式。)
否,内置的LOWER
和UPPER
function只影响ASCII字符。 但是您可以重新定义函数和sorting规则以添加此支持。 有一个ICU扩展到SQLite这样做。