【发布时间】:2013-06-27 23:50:01
【问题描述】:
我有以下 vbscript 代码:
hemisphereConnectionString = "Driver={MySQL ODBC 5.1 Driver};" & _
"Server=" & hemisphereServer & ";" & _
"Database=" & hemisphereDatabase & ";" & _
"User=" & hemisphereUsername & ";" & _
"Password=" & hemispherePassword & ";"
Set hemisphereConnection = CreateObject("adodb.connection")
hemisphereConnection.Open(hemisphereConnectionString)
hem_sql = "SELECT * FROM hei_vision_update WHERE id IN (SELECT MAX(id) FROM hei_vision_update WHERE done = 'N' GROUP BY name)"
Set hemisphereResult = hemisphereConnection.Execute(hem_sql)
if hemisphereResult.EOF = false then
hemisphereResult.MoveFirst()
end if
msgbox isnull(hemisphereResult("home_publish").value)
msgbox hemisphereResult("home_publish").value
它是一个更大的脚本的一部分(太大,无法在此处发布,但这些是关键行) 我的消息框显示为 false(即该字段的值不为空)并且下一个消息框崩溃说“无效使用 Null”
有人有什么想法吗??
我已将我的代码修改为上述内容,仅此而已(服务器和密码详细信息除外)。现在没有 OERN/OEG0 线路。我从数据库中获取的行在 home_publish 字段中有一个“Y”,因此第一个显示 false 的消息框是正确的。只有第二个显示“无效使用 Null”是个谜。我开始怀疑 MySQL 驱动程序是否存在问题?
现在越来越傻了:
我把最后两行改成了这三行:
msgbox hemisphereResult("home_publish").value
msgbox isnull(hemisphereResult("home_publish").value)
msgbox hemisphereResult("home_publish").value
第一个消息框显示我的值“Y”。
现在第二个消息框显示为真(显然不是)。
最后,我的第三个消息框给出了“无效使用 null”错误。
还有其他人经历过仅仅因为你使用过变量而失去价值的经历吗?
【问题讨论】:
-
您选择 home_phone,但您尝试显示字段 home_publish;摆脱你的全球 OERN。
-
抱歉,我把所有其他字段都从我的选择中删除了,因为发布时间会很长,但是 home_publish 在那里(还有 home_phone!) - 什么是全球 OERN?
-
好的,所以 OERN 出现错误继续下一步。虽然没有帮助。如果我有它就跳过错误
-
试试
MsgBox TypeName(hemisphereResult("home_publish").Value)。 -
我添加了两次: msgbox TypeName(hemisphereResult("home_publish").Value) msgbox TypeName(hemisphereResult("home_publish").Value) 第一个消息框说“String”,第二个说空值。不知何故,我的领域在第一次使用时就被破坏了!
标签: mysql database vbscript adodb mysql-odbc-connector