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行改成自己的连接数据库,对吗?
不知道是那里出错了 你那个DLL文件有问题吧,看看是不是X64和X86的不一致 你那个DLL文件有问题吧,看看是不是X64和X86的不一致 回复 1# ticket
http://www.autoitx.com/forum.php?mod=viewthread&tid=15055&highlight=MYSQL 真的也,,是libmysql.dll要X64的,,但是又有个奇怪的问题了,我明明是ip是192.168.16.71,,但确出现192.168.16.66
回复 5# ticket
192.168.16.66 是主機的IP 吧 本帖最后由 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身份登录啦!
回复 7# ticket
在同一台電腦 上做測試 不是比較單純嗎 为了MYSQL我用PYTHON来解决了。{:face (239):} 有听说这个程序python满火的,有空也来研究学习一下,,谢谢喔! 留个标记,mysql 我也搞来了很久了.... 可是搞不定,只能用mssql 留个标记,mysql我刚开始学习,~
页:
[1]