如何为TEXT列设置默认值为空字符串?

Gre*_*reg 11 sqlite

我正在使用SQLite Manager.

我有一个名为"MainContactName"的列,其结构是 TEXT NOT NULL=0

默认情况下,列中的每一行都有一个"红色背景",意思是它NULL.我怎样才能让它有一个"绿色背景"并且是空字符串?

Raf*_*afe 14

您可以在创建表时为列指定默认值.(看起来好像你不能使用ALTER语句添加默认值,所以你必须重新创建你的表.)

CREATE TABLE your_table_name
(MainContactName TEXT NOT NULL DEFAULT '')
Run Code Online (Sandbox Code Playgroud)

插入的没有为MainContactName指定的值的新行将具有MainContactName字段的空字符串.您可以尝试在该字段中显式插入空值,但由于NOT NULL约束,查询会爆炸.

  • 只是说使用`DEFAULT`也可以使用`ALTER`语句,并且将使用默认值创建列.[SQLite ALTER TABLE参考](https://www.sqlite.org/lang_altertable.html) (2认同)