如何在Flask的SQLite3架构中存储日期?

问题描述 投票:0回答:1

我知道'datetime'不是SQLite的有效数据类型,但我不太清楚要用什么替换它。以下面的语句为例,我会像其他语句一样将其存储为文本吗?如果是这样,我将如何在以后操纵它作为约会?

drop table if exists entries;
create table entries (
  id integer primary key autoincrement,
  title text not null,
  'text' text not null,
  date_created 
);
python sqlite
1个回答
0
投票

我知道'datetime'不是SQLite的有效数据类型

SQLite的灵活性导致几乎任何列类型都是有效的,例如

CREATE TABLE weidrcolumntypes (column1 rumplestiltskin, column2 weirdtestcolumn, column3 etc)

是有效的,将创建一个包含3列的表(4个与rowid列): -

enter image description here

SQLite的灵活性还允许将任何值存储在任何列中(例外情况是rowid,对于未使用WITHOUT ROWID定义的表,其中值必须是INTEGER)。

一个更全面的答案(标记为Android,但原则仍然适用)是here

This may also be of interest

因此,简而言之,任何列类型都能够处理/存储日期时间。

以下面的语句为例,我会像其他语句一样将其存储为文本吗?

如上所述,即使您拥有的代码也是可用的。您可能希望指定TEXTINTEGER的列类型。


如果是这样,我将如何在以后操纵它作为约会?

至于存储日期时间,可以使用Integer,Long或String,后者具有免费的Date And Time Functions

因此,您可以在查询中执行大部分与语言无关的操作。

© www.soinside.com 2019 - 2024. All rights reserved.