在 SQLite 中,值的数据类型与值本身相关联,而不是与列类型相关联。因此,假设我们有一个带有整数主键“id”和整数列“some_number”的表。如果我执行这样的查询:
INSERT INTO mytable (id, some_number) VALUES (NULL, "1234")
Run Code Online (Sandbox Code Playgroud)
123 会作为整数还是字符串插入?比如说,当我将它与“234”等其他值(作为数字 1234 > 234,作为字符串“1234” < “234”,对吧?)进行比较时,它会对我产生什么后果?
如果您的字段类型 (some_number) 是数字,那么它将作为数字值插入。不管你是否加引号。
如果 some_number 是数字
INSERT INTO mytable (id, some_number) VALUES (NULL, "1234")
Run Code Online (Sandbox Code Playgroud)
和
INSERT INTO mytable (id, some_number) VALUES (NULL, 1234)
Run Code Online (Sandbox Code Playgroud)
是相同的
| 归档时间: |
|
| 查看次数: |
584 次 |
| 最近记录: |