首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQLITE自定义DataTypes?

SQLITE自定义DataTypes?
EN

Stack Overflow用户
提问于 2011-12-07 22:47:59
回答 1查看 6.1K关注 0票数 14

我是SQLITE的新手,我注意到只有4种数据类型,但我在网上看到了一些例子,人们都在放入自己的数据类型。我真的不太明白这一点,不知道是否有人能给我解释一下。例如,我看到一个包含日期的列,给出的数据类型是timestamp,但它并不存在。它的默认值是什么?当您创建自己的文本时,它是否默认为文本?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-12-07 23:00:01

sqlite3使用动态类型系统。只有五个存储类别: NULL、integer、real、text和blob。(来源:Datatypes In SQLite Version 3。)

引用这一页:

除了整数主键列之外,SQLite版本3数据库中的任何列都可用于存储任何存储类的值。

除了integer primary key异常,SQLite根本不强制类型。这意味着您在create table中输入的类型名称纯粹是信息性的。

代码语言:javascript
复制
create table mytab (a apples, b bananas);

是有效的create table语句。您可以在这两列中插入时间戳、文本和blobs (并不是说您应该这样做,但您可以这样做)。

有关更多信息,请查看类型系统的链接参考文档。

代码语言:javascript
复制
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

直接回答你的问题:没有默认值。存储类型与存储在数据库中的每个值相关联,而不是与表的列相关联。

票数 19
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8417217

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档