最近在学习安卓的sqlite,我创建的table中imei的容量设计为char(2),但结果运行时为什么imei下也能存下15个字符的字符串?
SQLite最大的特点在于其数据类型为无数据类型(typelessness)。这意味着可以保存任何类型的数据到所想要保存的任何表的任何列中,无论这列声明的数据类型是什么。虽然在生成表结构的时候,要声明每个域的数据类型,但SQLite并不做任何检查。所以,尽管你声明的是char(2),但却可以存进去15个长度。所以使用SQLite的时候开发人员要靠自己的程序来控制输入与读出数据的类型。
估计你看错了,varchar可变的也是在size范围内才能存放。