↑↑↑点击上方图片,了解详情
使用环境说明: 后端使用SQL Server数据库,Access前端文件使用ODBC链接表。
![057dbc2cd2c4dc7a153e13321e6498ad.png](https://i-blog.csdnimg.cn/blog_migrate/ec4ff6c4a0bdb15e12ce926174ac654e.png)
SQL语句放在查询中能正常执行读取数据,但在使用Currentprojec.connection.execute 方法执行SQL语句的时候弹出如下错误提示:方法'Execute'作用于对象'_Connection'时失败,错误号-2147467259 当时以为是Access损坏了或者引用有问题,因为之前使用execute 方法从未遇到过错误,于是多次压缩修复数据库,问题还是依旧,转变思路SQL语句中换了一个表测试此方法,这次却能读取数据,一切正常,那问题应该就出在之前的那个表上,但具体又是什么原因造成此表在Execute方法时执行报错呢?继续测试查找原因,因为当时SQL语句只读取了表中的两个字段(MaterialID,Usage),于是去掉Usage字段,只保留读取MaterialID,测试一切正常,那问题就在Usage字段上,接着测试,将Usage字段也加入,并加上方括号[Usage]此时测试也正常,后来通过网络搜索发现Usage是SQL Server的保留关键字,那就是此问题引起的,对于同保留关键字同名的字段,读取的时候需要加方括号。
![057dbc2cd2c4dc7a153e13321e6498ad.png](https://i-blog.csdnimg.cn/blog_migrate/ec4ff6c4a0bdb15e12ce926174ac654e.png)
如果后端是SQL Server数据库的话,并且表中字段使用了SQL Server中的保留关键字,那么在使用connection对象的Execute方法时需要将相应的字段加上方括号[]。
End 推荐阅读![7077aad750ed49e9869b5c02c34c0b28.png](https://i-blog.csdnimg.cn/blog_migrate/fa74b36ab4ecfbb1454d377e89e73b49.png)
![246925722b5c0a00c94db71ed2a36a1a.png](https://i-blog.csdnimg.cn/blog_migrate/cd8f4ee13902d86162f6061f8cdd24fa.png)
![a35ecceb5f7a3657c03a928fa950df4a.png](https://i-blog.csdnimg.cn/blog_migrate/e7290c23d54b61300e6cc668c05334be.jpeg)
![65a4edbeb8fcb755b3230f3081d25b9d.png](https://i-blog.csdnimg.cn/blog_migrate/547423143f870de124c6cdf8e8aa2d9e.jpeg)
![fa4ef9207d42a269d86ab5cfb674c9dd.png](https://i-blog.csdnimg.cn/blog_migrate/c8cdf00dc9e4d739736ab6ca7357f2b3.png)
![2299439196f13c8f4c2bdcd89896b5a8.png](https://i-blog.csdnimg.cn/blog_migrate/8f1aa460d560e1118be00a031248532b.png)