Вот такой код:
Драйвер скачал, пробовал как 3.51 так и 5.1, ни один не заработал, функции взяты из mysql.au3. Выдает одни нули. Почему собственно не работает?
Код:
$sUsername = ""
$sPassword = ""
$sDatabase = ""
$sServer = ""
$connect = _MySQLConnect($sUsername, $sPassword, $sDatabase, $sServer, $sDriver = "{MySQL ODBC 3.51 Driver}", $iPort=3306)
MsgBox(1, "", _GetColNames($connect, $sDatabase) & @CRLF & _MySQLConnect($sUsername, $sPassword, $sDatabase, $sServer, $sDriver = "{MySQL ODBC 3.51 Driver}", $iPort=3306))
Func _MySQLConnect($sUsername, $sPassword, $sDatabase, $sServer, $sDriver = "{MySQL ODBC 3.51 Driver}", $iPort=3306)
Local $v = StringMid($sDriver, 2, StringLen($sDriver) - 2)
Local $key = "HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers", $val = RegRead($key, $v)
If Not @error or $val = "" Then
SetError(2)
Return 0
EndIf
$ObjConn = ObjCreate("ADODB.Connection")
$Objconn.open ("DRIVER=" & $sDriver & ";SERVER=" & $sServer & ";DATABASE=" & $sDatabase & ";UID=" & $sUsername & ";PWD=" & $sPassword & ";PORT="&$iPort)
If Not @error Then
SetError(1)
Return 0
Else
Return $ObjConn
EndIf
EndFunc
Func _GetColNames($oConnectionObj, $sTable)
If IsObj($oConnectionObj) And Not @error Then
Dim $ret[1], $rs
$rs = $oConnectionObj.execute ("SHOW COLUMNS FROM " & $sTable & ";")
With $rs
While Not .EOF
ReDim $ret[UBound($ret, 1) + 1]
$ret[UBound($ret, 1) - 1] = $rs.Fields (0).Value
.MoveNext
WEnd
EndWith
$ret[0] = UBound($ret, 1) - 1
Return $ret
EndIf
If @error Then
Return 0
SetError(1)
EndIf
EndFunc
Драйвер скачал, пробовал как 3.51 так и 5.1, ни один не заработал, функции взяты из mysql.au3. Выдает одни нули. Почему собственно не работает?