ticket 发表于 2017-4-19 22:50:11

MySQL 范例结果都不行

本帖最后由 ticket 于 2017-4-19 22:58 编辑

我参照了很多相关的MySQL范例结果都不行,没办法只好求助各位,请大家帮忙了,,谢谢{:face (394):}
不知道是那里出错,,,
我的环境:
phpMyAdmin版本资讯: 4.1.13
MySQL       版本资讯: 5.1.73
系统 windows 7 64位
文件夹内有的档案
C:\Users\marco\Desktop\MySQL\
運行test.au3內容如下:#include "mysql.au3"
_MySQL_InitLibrary()
If @error Then Exit MsgBox(0, '', "could nit init MySQL")
$MysqlConn = _MySQL_Init()   ;初始化

$connected = _MySQL_Real_Connect($MysqlConn, "127.0.0.1", "root", "andrew", "")   ;连接数据库,
If $connected = 0 Then Exit MsgBox(16, 'Connection Error', _MySQL_Error($MysqlConn))

;*******************建立数据库;********************
$query = "CREATE DATABASE IF NOT EXISTS TestResult DEFAULT CHARSET gbk"   ;建立数据库
$mysql_bool = _MySQL_Real_Query($MysqlConn, $query)
If $mysql_bool = $MYSQL_SUCCESS Then
    MsgBox(0, '', "Query OK")
Else
    $errno = _MySQL_errno($MysqlConn)
    MsgBox(0,"Error:",$errno & @LF & _MySQL_error($MysqlConn))
EndIf

$connected1 = _MySQL_Real_Connect($MysqlConn, "127.0.0.1", "root", "andrew", "testresult")   ;连接数据库
If $connected1 = 0 Then Exit MsgBox(16, 'Connection Error', _MySQL_Error($MysqlConn))
;********************建立数据表;********************
$sMySqlStatement = "CREATE TABLE IF NOT EXISTS test(" & _
                "TimeDate TIMESTAMP ON UPDATE CURRENT_TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP," & _    ;时间日期类型
                "Name TEXT NOT NULL ," & _                                                               ;文字类型
                "ErrorCode INT NOT NULL);"                                                                                                                         ;数值类型
If_MySQL_Real_Query($MysqlConn, $sMySqlStatement) Then          ;建立数据表
    MsgBox(0, '', "Query OK")
Else
    $errno = _MySQL_errno($MysqlConn)
    MsgBox(0,"Error:",$errno & @LF & _MySQL_error($MysqlConn))
EndIf

$Name = "NPxda"
$errorcode = "11111"

Local $addrecord = "INSERT INTO mbtestresult(TimeDate,Name,ErrorCode) VALUES (NOW( )," & _
                "'" & $Name & "', " & _
                "'" & $errorcode& "'" & ");"

If _MySQL_Real_Query($MysqlConn, $addrecord) Then
      $errno = _MySQL_errno($MysqlConn)
      MsgBox(0, "Error:", $errno & @LF & _MySQL_error($MysqlConn))
Else
      MsgBox(0, '', "Query OK")
EndIf
; 结束连接
_MySQL_Close($MysqlConn)
; 退出MYSQL
_MySQL_EndLibrary()結果出現下圖:

第6和19行改成自己的连接数据库,对吗?
不知道是那里出错了

wln 发表于 2017-4-19 23:16:47

你那个DLL文件有问题吧,看看是不是X64和X86的不一致

wln 发表于 2017-4-19 23:16:53

你那个DLL文件有问题吧,看看是不是X64和X86的不一致

kk_lee69 发表于 2017-4-19 23:32:17

回复 1# ticket


    http://www.autoitx.com/forum.php?mod=viewthread&tid=15055&highlight=MYSQL

ticket 发表于 2017-4-20 00:13:17

真的也,,是libmysql.dll要X64的,,但是又有个奇怪的问题了,我明明是ip是192.168.16.71,,但确出现192.168.16.66

kk_lee69 发表于 2017-4-20 00:20:15

回复 5# ticket

    192.168.16.66 是主機的IP 吧

ticket 发表于 2017-4-20 11:35:41

本帖最后由 ticket 于 2017-4-20 11:37 编辑

我找了一下百度说,,可能是你的帐号不允许从远程登陆
以下是我查的内容,,不是道是不是这个原因,,


报错:1130-host ... is not allowed to connect to this MySql server
解决方法:1。 改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"mysql -u root -pvmwaremysql>use mysql;mysql>update user set host = '%' where user = 'root';mysql>select host, user from user;2. 授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;FLUSH   PRIVILEGES;如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;FLUSH   PRIVILEGES;如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器的dk数据库,并使用mypassword作为密码GRANT ALL PRIVILEGES ON dk.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;FLUSH   PRIVILEGES;我用的第一个方法,刚开始发现不行,在网上查了一下,少执行一个语句 mysql>FLUSH RIVILEGES 使修改生效.就可以了另外一种方法,不过我没有亲自试过的,在csdn.net上找的,可以看一下.在安装mysql的机器上运行:1、d:\mysql\bin\>mysql   -h   localhost   -u   root //这样应该可以进入MySQL服务器2、mysql>GRANT   ALL   PRIVILEGES   ON   *.*   TO   'root'@'%'   WITH   GRANT   OPTION //赋予任何主机访问数据的权限3、mysql>FLUSH   PRIVILEGES //修改生效4、mysql>EXIT //退出MySQL服务器这样就可以在其它任何的主机上以root身份登录啦!

kk_lee69 发表于 2017-4-20 11:37:50

回复 7# ticket

在同一台電腦 上做測試 不是比較單純嗎

heroxianf 发表于 2017-4-20 15:34:58

为了MYSQL我用PYTHON来解决了。{:face (239):}

ticket 发表于 2017-4-20 16:08:33

有听说这个程序python满火的,有空也来研究学习一下,,谢谢喔!

haopp1 发表于 2017-5-12 21:19:36

留个标记,mysql 我也搞来了很久了.... 可是搞不定,只能用mssql

84063016 发表于 2017-5-26 10:53:30

留个标记,mysql我刚开始学习,~
页: [1]
查看完整版本: MySQL 范例结果都不行