Ms access fieldname中的连字符导致MS Access中的INSERT语句失败
我已经得到了一个MS Access应用程序来维护,并且更加熟悉Oracle作为dbms,我偶尔会遇到一些问题 今天,当使用连字符作为列名时,MS Access似乎出现了问题 下面的insert语句与NotInList事件耦合,以向列表框添加额外的条目 插入TBLPProductInfo(ProductInfo产品) 选择“&NewData&”作为ProductInfo产品 但是它不起作用了(再也不起作用了?第一次报告问题时,不确定最初的开发人员是否测试了它) 我已经用一个记录追加查询测试了它,看起来连字符是罪魁祸首,我就是找不到逃避的方法 插入TBLPProductInfo(ProductInfo产品)值(“myData”) 给出的错误是“INSERT INTO语句中的语法错误” 似乎没有其他方法可以指定MS Access字段名,是吗?(方括号仅用于SELECT语句 所以…我呼吁诸神的智慧,希望有人知道如何解决这个问题Ms access fieldname中的连字符导致MS Access中的INSERT语句失败,ms-access,ms-access-2007,Ms Access,Ms Access 2007,我已经得到了一个MS Access应用程序来维护,并且更加熟悉Oracle作为dbms,我偶尔会遇到一些问题 今天,当使用连字符作为列名时,MS Access似乎出现了问题 下面的insert语句与NotInList事件耦合,以向列表框添加额外的条目 插入TBLPProductInfo(ProductInfo产品) 选择“&NewData&”作为ProductInfo产品 但是它不起作用了(再也不起作用了?第一次报告问题时,不确定最初的开发人员是否测试了它) 我已经用一个记录追加查询测试了它,看
提前感谢!!您需要方括号:
"INSERT INTO tblProductInfo ([ProductInfo-Product]) Values (""" & NewData & """)"
或者更好的是,避免字段和表名中出现奇数字符和空格
方括号用于字段或表名有问题的任何sql语句:
- 这是一个保留字
- 它包含一个空格
- 它包括一个特殊的字符
Create Table tblProductInfo ( [ProductInfo-Product] Text(50))
谢谢你的快速回答!!我觉得自己很愚蠢,因为我不知道你可以在括号内使用方括号…啊!