找回密码
 加入
搜索
查看: 3365|回复: 4

[网络通信] 关于mysql.au3的一个问题

[复制链接]
发表于 2011-12-1 11:33:39 | 显示全部楼层 |阅读模式
是withoutODBC的版本,自带的test.au3里只有查询,可以正常查询我的mysql,但是我在其中使用 _AddRecord添加记录时提示,怎么回事?

ERROR: _AddRecord(): undefined function.



mysql.au3的相关文件我都在当前目录和include文件夹都放了一份
发表于 2011-12-1 14:31:00 | 显示全部楼层
#include是否包含正确的文件名。是否存在
函数名是否正确。
 楼主| 发表于 2011-12-1 14:48:27 | 显示全部楼层
回复 2# nivisde


    include肯定没问题,自带的test里面就调用了很多mysql.au3的函数。
_AddRecord是我照着论坛的教程添加的,mysql.au3中也找到了,没问题
发表于 2011-12-1 20:59:53 | 显示全部楼层
直接copy MySql.au3里的_AddRecord()试试.
 楼主| 发表于 2011-12-1 23:24:30 | 显示全部楼层
回复 4# xms77


    问题依旧啊,这个是mysql.au3中的_AddRecord
Func _AddRecord($oConnectionObj, $sTable, $vRow, $vValue = "")
        If IsObj($oConnectionObj) Then
                $query = "INSERT INTO " & $sTable & " ("
                
                If IsArray($vRow) Then
                        For $i = 0 To UBound($vRow, 1) - 1
                                If $i > 0 And $i <> UBound($vRow, 1) - 1 Then
                                        $query = $query & "," & $vRow[$i] & ""
                                ElseIf $i = UBound($vRow, 1) - 1 And $vRow[$i] <> "" Then
                                        $query = $query & "," & $vRow[$i] & ") VALUES("
                                ElseIf $i = 0 Then
                                        $query = $query & "" & $vRow[$i] & ""
                                ElseIf $vRow[$i] = "" Then
                                        $query = $query & ") VALUES("
                                EndIf
                        Next
                EndIf
                If Not IsArray($vRow) And Not IsArray($vValue) And Not IsInt($vValue) Then
                        $oConnectionobj.execute ("INSERT INTO " & $sTable & " (" & $vRow & ") VALUES('" & $vValue & "')")
                        return 1
                ElseIf IsInt($vValue) And Not IsArray($vRow) And Not IsArray($vValue) Then
                        $oconnectionobj.execute ("INSERT INTO " & $sTable & " (" & $vRow & ") VALUES(" & $vValue & ")")
                        return 1
                EndIf
                
                If IsArray($vValue) Then
                        For $i = 0 To UBound($vValue, 1) - 1
                                If $i > 0 And $i <> UBound($vValue, 1) - 1 And Not IsInt($vValue[$i]) Then
                                        $query = $query & ",'" & $vValue[$i] & "'"
                                ElseIf $i = UBound($vValue, 1) - 1 And $vValue[$i] <> "" And Not IsInt($vValue[$i]) Then
                                        $query = $query & ",'" & $vValue[$i] & "');"
                                ElseIf $i = 0 And Not IsInt($vValue[$i]) Then
                                        $query = $query & "'" & $vValue[$i] & "'"
                                ElseIf $vValue[$i] = "" Then
                                        $query = $query & ");"
                                ElseIf IsInt($vValue[$i]) And $vValue[$i] <> "" Then
                                        $query = $query & "," & $vValue[$i]
                                EndIf
                        Next
                EndIf
                If StringRight($query, 2) <> ");" Then
                        $query = $query & ");"
                        
                EndIf
                $oconnectionobj.execute ($query)
        EndIf
        If Not IsObj($oConnectionObj) Then
                SetError(2)
                Return 0
        EndIf
        If @error And IsObj($oConnectionObj) Then
                Return 0
                SetError(1)
        Else
                Return 1
        EndIf
        
EndFunc   ;==>_AddRecord
代码我这样写的
dim $tvalues[3]
$tvalues[0] = "pc"
$tvalues[1] = "email"
$tvalues[2] = "";

_AddRecord($connected,'s',$tvalues,$tvalues)
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-6-9 23:22 , Processed in 0.084402 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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