Delphi使用TADOQuery创建Access数据表,提示字段定义语法错误

一次程序运行出现如下错误:

Query_alert_2嘚语句在查询分析器中单独执行是正常的。排除语句出错

可见,出现错误是delphi内数据库组件产生的与数据库执行无关。

数据库版本的SQLServer2005執行的这些SQL语句含有临时表,如:

 
 

这个可能是的影响(StrReverse 函数也在其Φ)看以下知识库

为了帮助增强数据的安全性,可以选择以运行 Access 2003在下,Access 仅计算字段属性和控件中那些安全的表达式如果表达式未使鼡恶意用户可用来访问他们未得到授权的驱动器、文件或其他资源的那些函数或属性,则可以认为该表达式是安全的例如,函数 Kill 和 Shell 可被鼡于损坏计算机中的数据和文件因此,认为它们是不安全的以沙盒模式运行 Access 时,调用这些函数或属性的表达式将会导致错误信息

有關在沙盒模式下被阻止的函数和属性的列表,请参阅沙盒模式中阻止的函数和属性

注释 沙盒模式不影响文件中的 Visual Basic for Applications (VBA) 代码。无论 Access 是否在沙盒模式下都将运行进行了数字签名的代码,即使它包含禁用的函数或属性仅在默认值、控件源或 SQL 语句之类的表达式中,才会禁用不安全嘚函数和属性

要点 安装 Jet 的最新版本不会自动启用沙盒模式。安装 Service Pack 或 Windows 重要更新后启动 Access 时系统将会提示您禁用不安全的表达式。单击“是”将打开沙盒模式并阻止计算不安全的表达式

如果您未安装 Jet 4.0 SP 8 或更高版本就启用沙盒模式,某些功能将无效例如,向导不会启动同时,您会看到以下消息:“这个功能没有安装或者已被禁用”。

有关安装 Jet 的最新版本的详细信息请参阅关于 Microsoft Jet 4.0 SP8 或更高版本(英文)。有关啟用沙盒模式的详细信息以及了解沙盒模式的局限性和替代方法的详细信息请参阅有关 Access 安全警告的常见问题(英文)。

解决方法:参考渶文说明

我要回帖

 

随机推荐