使用“insert into”命令将复选框标记为yes

时间:2014-02-21 16:45:45

标签: sql ms-access insert access-vba ms-access-2010

insert into命令是否适用于复选框我尝试使用INSERT INTO命令将其更改几次,其余列执行除复选框之外的功能。

INSERT INTO Record ( Member, Date, Location, Movie, In, Out)
VALUES ('5', '11/12/2010', 'A1Z', '387654321', 'Yes', 'No');

尝试使用true false但仍然无法正常运行语法错误

2 个答案:

答案 0 :(得分:1)

是的,INSERT适用于CheckBoxes。这是一个例子:

INSERT INTO Table1 ( FldA, FldB, ChkBox )
SELECT "A" AS Expr1, "B" AS Expr2, True AS Expr6;

答案 1 :(得分:1)

我不确定导致错误的确切原因。我可以告诉你,这个INSERT语句成功地将一行添加到从Record语句创建的CREATE TABLE表中:

INSERT INTO Record
    (
        Member,
        [Date],
        Location,
        Movie,
        [In],
        [Out]
    )
VALUES
    (
        '5',
        #2010-11-12#,
        'A1Z',
        '387654321',
        True,
        False
    );

一个可能的复杂因素是DateInOut都是reserved words。我预计Record也是一个保留字,但显然不是。我将这些字段名称括在方括号中,以避免混淆数据库引擎。但我不确定这些名字是否会导致你的问题。

其他一些考虑因素......

  • 如果您的Date字段是日期/时间数据类型,请使用#分隔符(而不是引号)作为您在该字段中插入的值。
  • 如果InOut是YesNo数据类型,请将它们设为True或False,不带引号。相应的整数值,-1表示True,0表示False,也可以。

这是我用于在Access 2007中创建Record表的语句:

CREATE TABLE Record
    (
        Member TEXT(255),
        [Date] DATETIME,
        Location TEXT(255),
        Movie TEXT(255),
        [In] YESNO,
        [Out] YESNO
    );