来自create table语句或者强转语句的范例类型名 | 产生的近似 | 用于决定近似的规则 |
INT | INTEGER | 1 |
CHARACTER(20) | TEXT | 2 |
BLOB | NONE | 3 |
REAL | REAL | 4 |
NUMERIC | NUMERIC | 5 |
注意到声明类型为”FLOATING POINT”将被赋予INTEGER近似,而不是REAL近似,因为在”POINT”中的”INT”。声明类型为”STRING”的将被赋予NUMERIC,而不是TEXT(因为上述表中定义的类型中不存在STRING这一类型,它被归于到规则<4>中,属于其他情况)。
(从上面可以看出,sqlite3只是从声明类型字符串中去查找它知道的声明类型,比如”XINT”将被赋予INTEGER近似因为这个字符串里面有”INT”,所以这里并不需要一个单独的正确的声明类型,而是只要声明类型字符串里面包含了sqlite所知道的声明类型即可)