我使用sqlite作为我的应用程序的后端数据库,并存储在'真正'数据类型列的浮点值,但它也存储字符串值。 我知道数据可以在前端检查,但我想知道为什么sqlite不检查数据插入记录。Sqlite存储字符串值在数字或真正的数据类型
0
A
回答
1
SQLite使用动态类型,即值的数据类型与值本身关联,而不是与其容器关联。它不强制数据类型约束。您可以将任何类型的数据存储在任何列中。在SQLite here中阅读关于此here和数据类型的更多信息。
大多数SQL数据库引擎(每个SQL数据库引擎比其它的SQLite,因为据我们所知)摘录使用静态,僵化打字。使用静态类型,值的数据类型由其容器确定 - 存储值的特定列。
SQLite使用更通用的动态类型系统。在SQLite中,值的数据类型与值本身相关联,而不与其容器相关联。 SQLite的动态类型系统向后兼容其他数据库引擎的更常见的静态类型系统,因为在静态类型数据库上工作的SQL语句应该在SQLite中以相同的方式工作。但是,SQLite中的动态类型允许它执行传统的严格类型数据库中不可能的事情。
在你的情况, SQLite的尝试你通过即asasassas
为双/浮点值的值转换,但由于它没有做到这一点,它已插入的值作为string
。 SQLite的这个特性被称为type affinity。
相关问题
- 1. sql数据库 - 数字或字符串数据类型
- 2. SQLite数据库不存储双值作为字符串
- 3. Android的 - 如何在SQLite数据库中存储html字符串
- 4. 类型为字符串或数字
- 5. 如何在字符数据类型中存储999值
- 6. 存储“很多”字符串的数据类型建议?
- 7. 将二维字符串数组存储到SQLite数据库
- 8. 比较日期(存储为字符串)在android sqlite数据库?
- 9. 在字母数字字符串中存储整数值
- 10. 字符串数据存储在哪里?
- 11. Postgres字符串数据类型存储分配
- 12. 核心数据,以字符串类型存储html
- 13. Azure表存储只支持字符串作为数据类型?
- 14. 以字符数据类型C语言存储字符
- 15. 如何将字符串值转换为存储在另一个字符串中的给定数据类型?
- 16. 将数据存储到字符串或数据库中
- 17. SQL Server - 更好的数据类型来存储大字符串值
- 18. 使用PeeWee将Unicode字符串存储到SQLite数据库
- 19. SQLite中“文本”和“字符串”数据类型的区别
- 20. 数据库数据类型性能:int或字符串
- 21. SQLite的数字数据类型
- 22. 我有一个类的字符串数据存储的类
- 23. 字符串到数据类型类
- 24. appengine数据存储 - 按字符串或整数过滤
- 25. 将Rails数据存储为整数或字符串
- 26. 返回类型的字符串数组或数据表?
- 27. 在字符或字符串变量存储序列化数据在Java中
- 28. 存储数据库连接字符串
- 29. c中的字符串数据类型
- 30. java中的字符串数据类型