如何在vb.net中通过SQL添加"布尔"列到ms-access

Pez*_*zzz 5 sql vb.net ms-access

我试图Boolean使用SQL在ms-access中向表中添加一列.我正在使用JET,这是我尝试过的SQL查询.

Query = "ALTER TABLE tabDatafiveMinutely ADD CON0001 BOOLEAN DEFAULT FALSE"
Query = "ALTER TABLE tabDatafiveMinutely ADD CON0001 BOOLEAN"
Run Code Online (Sandbox Code Playgroud)

我得到的错误是"字段定义中的语法错误"

谢谢你的帮助

编辑:

我现在想制作默认值null而不是false.我试过了default null,这仍然给了我false,任何人都可以帮忙吗?

结果:

一个MS-Access数据库只能走truefalse不空.因此我决定使用而integer不是.

Oli*_*bes 10

列的等效SQL类型Yes/NoBIT

ALTER TABLE tabDatafiveMinutely
    ADD COLUMN CON0001 BIT   DEFAULT 0   NOT NULL
Run Code Online (Sandbox Code Playgroud)

微软的文档

注意
DEFAULT语句只能通过Jet OLE DB提供程序和ADO执行.如果通过Access SQL View用户界面使用它将返回错误消息.


正如@Pere指出的那样,Jet Engine(Access'查询引擎)不会将DEFAULT值应用于现有行.您必须在更改表后运行UPDATE语句.

UPDATE tabDatafiveMinutely SET CON0001 = 0 WHERE CON0001 IS NULL
Run Code Online (Sandbox Code Playgroud)