zghwelcome
发表于 2016-4-20 17:00:21
好教程,收藏了
gaoan000
发表于 2016-4-20 17:22:46
回复gaoan000
這兩句 不就等同
$sqlCon = ObjCreate("ADODB.Connection")
$sqlCon.Open("Provider= ...
kk_lee69 发表于 2016-4-20 16:43 http://www.autoitx.com/images/common/back.gif
这样,您可能误解我的意思了,连接语句这个我还是知道,在 连接函数 和 读取数据函数 里面我都没找到创建记录集的语句 "ObjCreate("ADODB.Recordset")" ,我想问下这个语句是不是可以通过别的办法隐式创建?
我前面发的两个函数我单独拿出来可以用,可以读取表格数据显示出来
kk_lee69
发表于 2016-4-20 17:53:56
回复 108# gaoan000
理論上 可以省略
你看看第一次發給我裡面有句
$quer = $oConnectionObj.execute($str)
$oConnectionObj.execute($str)
執行SQL 語句後的東西 設到$quer
$quer 就是個 紀錄集
gaoan000
发表于 2016-4-20 18:27:12
回复gaoan000
理論上 可以省略
你看看第一次發給我裡面有句
$quer = $oConnectionObj.execute($st ...
kk_lee69 发表于 2016-4-20 17:53 http://www.autoitx.com/images/common/back.gif
这样啊,我明白了.真是太谢谢您了
zhaoceshi
发表于 2016-4-24 23:03:59
本帖最后由 zhaoceshi 于 2016-4-24 23:06 编辑
大神,我想要把查询语句返回的结果全部显示出来,该怎么写?#include <GuiListView.au3>
Dim $Server = "." ;SQL主机名称
Dim $ID = "sa" ; 登入数据库主机的账号一般都会用sa
Dim $pw = "123" ;登入数据库主机的密码
Dim $Company = "123" ;数据库名称
$conn = ObjCreate("ADODB.Connection")
$RS = ObjCreate("ADODB.Recordset")
$conn.Open("driver={SQL Server};server=" & $Server & ";uid=" & $ID & ";pwd=" & $pw & ";database=" & $Company) ;主机名IP127.0.0.1,UID=用户,PWD=密码,database=数据库名
$RS.ActiveConnection = $conn ; 设定RS 是 conn 的集合 重要的部份
;标准的 读取数据 循环模式语法
;几乎 所有的查询都只要套用这个模式就可以了......
$RS.open(" SELECT * FROM SendSMSRecord ") ;
;MsgBox(0, "字段一", $RS.Fields(8).value, 5) ;显示第一个字段 资料 ,AU3返回的数据通常 都是不含 原本的 字段名称要取的字段名称需要其它方法
;MsgBox(0, "字段二", $RS) ;显示第二个字段 资料
后面的msgbox只能显示第一行的某个字段
kk_lee69
发表于 2016-4-24 23:07:03
回复 111# zhaoceshi
請問你要寫是在哪邊?? 是畫面上的 LISTVIEW 還是 EDIT 控件 還是甚麼??
還是 彈出 訊息對話框即可
你要先了解你要做甚麼事情
zhaoceshi
发表于 2016-4-24 23:10:37
本帖最后由 zhaoceshi 于 2016-4-24 23:11 编辑
回复 112# kk_lee69
把SELECT * FROM SendSMSRecord这句查询语句返回的结果显示出来即可,显示方法无所谓,
kk_lee69
发表于 2016-4-24 23:14:28
回复 113# zhaoceshi
注意看這句話
MsgBox(0, "字段一", $RS.Fields(8).value, 5)
假設你的資料表為姓名住址電話
$RS.Fields(0).value表示 資料表的第一個欄位值 (姓名)
$RS.Fields(1).value表示 資料表的第二個欄位值 (住址)
$RS.Fields(3).value 表示資料表的 第三個 欄位值 (電話)
你要顯示再一起 不就
MsgBox(0, "字段一", $RS.Fields(0).value&" "& $RS.Fields(1).value&" "& $RS.Fields(3).value, 5)
Netfox
发表于 2016-4-25 00:41:06
不错的教程
zhaoceshi
发表于 2016-4-25 09:35:39
回复 114# kk_lee69
这样也只是显示一行吧,如果是多行的呢?
kk_lee69
发表于 2016-4-25 09:49:16
回复 116# zhaoceshi
還有 你改了我的 語法我原本的語法是
;标准的 读取数据 循环模式语法
;几乎 所有的查询都只要套用这个模式就可以了......
$RS.open ("请注意 这里存放的是 刚刚打好的 SQL 语法 ...请注意 前后都有加上 双引号");
While (Not $RS.eof And Not $RS.bof);循环读表 有资料就跑回圈没资料就会跳出
MsgBox(0, "字段一", $RS.Fields (0).value,5);显示第一个字段 资料 ,AU3返回的数据通常 都是不含 原本的 字段名称要取的字段名称需要其它方法
MsgBox(0, "字段二", $RS.Fields (1).value);显示第二个字段 资料
If StringIsDigit($RS.Fields(1).value)=0 Then ;这边可以加上判断
EndIf
$RS.movenext;下一笔资料
WEnd;结束循环读表
$RS.close;关闭数据分表 当使用 RS 查询之后 整个纪录读取完毕后必须要关闭 RS
這個是 有循環的 即使 你的資料筆數 有一千萬筆 他也會循環 一千萬次 你每筆資料都會跑一次 MsgBox
ysping
发表于 2016-9-7 08:17:39
大神,操作oracle数据库也类似吗?
kk_lee69
发表于 2016-9-7 11:43:40
回复 118# ysping
是
但是oracle 理論上 應該要在ODBC 上裝驅動 只要可以透過 ODBC 的 都可以用上面的方法
hfutxkk
发表于 2016-9-7 23:07:10
不错,学习了,谢谢分享
wanglei303x
发表于 2016-9-21 15:18:45
How can i get five
页:
1
2
3
4
5
6
7
[8]
9
10