我对SQLITE相当新,我注意到只有4种数据类型,但是我在网上看到人们使用自己的数据类型的例子.我真的不明白这一点,并想知道是否有人可以向我解释.例如,我看到一个将保存日期的列,并且给出的数据类型是不存在的时间戳.它默认是什么?你自己制作时是否默认为文字?
sqlite3
使用动态类型系统.只有五个存储类:NULL,整数,实数,文本和blob.(来源:SQLite版本3中的数据类型.)
并且,引用该页面:
除了INTEGER PRIMARY KEY列之外,SQLite版本3数据库中的任何列都可用于存储任何存储类的值.
除了integer primary key
例外,SQLite根本不强制执行类型.这意味着您输入的类型名称create table
纯粹是提供信息的.
create table mytab (a apples, b bananas);
是一个有效的create table
声明.您可以在两列中插入时间戳,文本,blob(不是说你应该,但你可以).
有关更多信息,请查看类型系统的链接参考文档.
sqlite> create table mytab (a apples, b bananas); sqlite> insert into mytab values (CURRENT_TIME, NULL); sqlite> insert into mytab values ('hello', 3.14159); sqlite> select * from mytab; 14:59:18| hello|3.14159
直接回答你的问题:没有默认值.存储类型与存储在数据库中的每个值相关联,而不与表的列相关联.