找回密码
 加入
搜索
查看: 6326|回复: 7

[AU3基础] AUTOIT3 查询数据库遇到的无法读取问题

  [复制链接]
发表于 2013-6-13 10:40:48 | 显示全部楼层 |阅读模式
本帖最后由 langyuziyou 于 2013-6-13 13:26 编辑

用AUTOIT 连接数据库并且读取数据。如果是'select * from all_users'表是可以读结果的出来,但是如果把执行语句换成 'select * from test' (test是我自己创建的表),就无法读出数据这是为什么了?

Local $role
$Connection ="DRIVER={MICROSOFT ODBC FOR ORACLE};Server=ORCL;User Id=JUSTICE;Password=ROOT123"


$adoCon=ObjCreate("ADODB.Connection");建立ADO对象
$adoCon.open($Connection)
$adoRs=ObjCreate("ADODB.Recordset");建立数据集对象
$adoRs.ActiveConnection=$adoCon  ;绑定连接
$adoRs.open("select * from TEST")
While Not $adoRs.eof  And Not $adoRs.bof
        If @error=1 Then ExitLoop
        For $i=0 To $adoRs.fields.count-1
                $role=$role&$adoRs.fields($i).value&@CRLF
        Next
        $adoRs.movenext
WEnd
$adoRs.close
$adoCon.close
$role=StringLeft($role,StringLen($role)-1)
MsgBox(0,"",$role)

以下是报出错误:
C:\Users\Administrator\Desktop\script\?????\connectOracle_test.au3 (21) : ==> The requested action with this object has failed.:
$adoRs.open("select * from TEST")
$adoRs.open("select * from TEST")^ ERROR

JUSTICE@ORCL AS SYSDBA JUSTICE是sysdba的权限
语句在oracle执行是成功的,但是用autoit 执行会出错。
望前辈们指教。
发表于 2013-6-13 13:04:00 | 显示全部楼层
本帖最后由 auto 于 2013-6-13 13:06 编辑

test 是 JUSTICE用户 建立的表的?
看看all_table 的rest表用户是谁
 楼主| 发表于 2013-6-13 13:24:41 | 显示全部楼层
回复 2# auto


test 是 justice 创建的表
在oracle 中执行是成功的,但是在autoit中执行会报错。
发表于 2013-6-13 13:46:42 | 显示全部楼层
本帖最后由 xms77 于 2013-6-13 16:01 编辑

回复 1# langyuziyou
我一直都没有连上过Oracle数据库,楼主可以说说要怎么配置ODBC吗?
我安装的是Oracle Client 11g
发表于 2013-6-13 16:22:50 | 显示全部楼层
看看 權限問題   遇過資料庫 不開放 SELECT  就讀取不到
发表于 2013-6-13 19:50:50 | 显示全部楼层
先试试select * from dual;看看会不会出错
发表于 2013-6-13 19:52:29 | 显示全部楼层
内网IP还是外网的IP,如果是外网把服务器IP贴出来看看
发表于 2013-6-17 15:17:49 | 显示全部楼层
我觉得还是权限问题
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-16 09:40 , Processed in 0.073407 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表