问题 sqlite3:创建没有列的表


我想在sqlite3中创建没有列的表。它可以在postgres数据库中,但不能在sqlite3中。有没有办法实现这一点,还是根本不支持(也许不是在sql标准?)我检查了sqlite3 CREATE TABLE 语法似乎必须至少有一列,但也许我错过了什么?


10230
2017-12-30 23:55


起源

我很好奇零列表解决了什么问题。注意详细说明? - Tim
我正在做一个宠物项目并正在进行测试。我可以在postgres中创建空表以用于测试目的,但sqlite的相同自动测试失败。所以我想确定我做错了什么。由于sql标准不支持空表,所以我不需要关心它。 - gruszczy
@Tim可能想要创建空表然后继续添加列。 - entonio


答案:


SQLite不支持零列表。或者在SQL标准中。


11
2017-12-31 00:00



有趣的是, 它可能在PostgreSQL中但是 - Lukas Eder


我有同样的问题,因为我想要一个只有rowid字段的表。虽然您可能无法创建没有列的表,但您可以使用以下代码创建仅包含rowid字段作为主键的表:

CREATE TABLE tablename (rowid INTEGER PRIMARY KEY) WITHOUT ROWID;

0
2018-04-28 22:39