症状
预览时在浏览器中的 Visual Basic 脚本中编写的代码,将出现以下错误消息:
内存不足的 Microsoft VBScript 编译错误"800a03e9"
原因
VBScript 的最大静态字符串限制为 1022 个字符,并将出现此错误的代码行的长度超过 1022 个字符的任意时间。
解决方案
大多数情况下,错误行是代码的 SQL 语句因为 SELECT 语句可能会非常大。可以使用下列选项之一来解决此问题:
-
如果选择的单个表,删除前面的每一列"表."前缀。
-
创建一个变量来保存的 SELECT 语句,并将 SQL 连接跨多个行,如下所示:
MySQL = "SELECT table.col1, table.col2 "MySQL = MySQL & "FROM table "MySQL = MySQL & "Where x = 3"
-
如果列数相对较小,但从多个表中选择的 SELECT 语句,创建一个视图。选择相对于视图,省略前面列"表."前缀。
-
对于太多的非 SQL 行的代码,您可以使用前面列出的第二个解决办法。
状态
此行为是设计使然。