我使用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中的字符串數據類型