该错误是由一下原因造成的:
1)将保留字用作名称。大多数数据库都有一组保留字。例如,"name"是保留字,因而不能用于数据库中的列名称。
2)名称中使用特殊字符。特殊字符的示例包括: . / * : ! # & - ?
3)在列名称中使用空格。
4)当为数据库中的对象定义了输入掩码并且插入的数据与该掩码不符时,也会出现此错误。
解决该问题的方法是有以下两种:
1)在指定数据库中的列名称时,请避免使用"name"、"date"、"where"、"select"、和"level"等保留字。另外,请清除空格和特殊字符
2)当字段名与保留字相同时,我们可以在sql语句中应用[] 加以区分。
追问![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/d01373f082025aaf8d818f70f8edab64024f1add?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/d31b0ef41bd5ad6ed254955182cb39dbb7fd3cdf?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/eaf81a4c510fd9f9509ea4d2262dd42a2934a484?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/342ac65c103853436087769a9013b07ecb8088c5?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
追答第一个图:and性别
应该为:and 性别 中间有一个空格
第二个图:IAdodc 查前面是否多了一个I
第三个图:str 的内容有问题