|
1、调用需要用到udf #include "mysql.au3"
#include "libMySQLdll.au3"
or #include "EzMySql.au3" ;推荐这个方式,简单粗暴
2、ODBC方式调用学习连接
http://www.autoitx.com/forum.php?mod=viewthread&tid=29065&highlight=%B4%E6%B4%A2%B9%FD%B3%CC
http://www.autoitx.com/forum.php?mod=viewthread&tid=25286&highlight=%B4%E6%B4%A2%B9%FD%B3%CC
3、遇到的问题总结
3.1 __MySQL_ExtractEmbeddedDLL() 会生成 X86和X64的 libmysql.dll文件
_MySQL_InitLibrary() 在X64系统下会提示使用libmysql.dll,可能的原因系统是64位,需要使用libmySQL_x64.dll
解决方式:
A:修改mysql.au3 进行版本判断,
B:修改并打包libmySQL_x64.dll -> libmysql.dll
C: 推荐使用EzMySql.au3
3.2 _mysql_real_query or _mysql_query 调用过程遇到:直接调用会报一个 mysql_error错误:XXXXcan't return a result set in the given context。
解决方式:
Global $CLIENT_MULTI_RESULTS=131072
_MySQL_Real_Connect($MysqlConn,"host","user", "pass", "database", "port","sock",$CLIENT_MULTI_RESULTS)
4、参考资料
http://dev.mysql.com/doc/refman/5.1/en/mysql-real-connect.html
demo:http://www.autoitx.com/forum.php ... p;tid=15590&highlight=MySQL (简体中文版MYSQL-udf说明)
udf:http://www.autoitx.com/forum.php?mod=viewthread&tid=5273&highlight=MySQL
MySQL.au3另一个小BUG:http://www.autoitx.com/forum.php ... p;tid=43692&highlight=MySQL
EzMySql.au3
http://www.autoitx.com/forum.php?mod=viewthread&tid=20280&highlight=MySQL EzMYSQL 数据操作,建数据库,删除,查询,查找一条龙(单机测试可用)
标志名称 | 标志描述 | CLIENT_COMPRESS | 使用压缩协议。 | CLIENT_FOUND_ROWS | 返回发现的行数(匹配的),而不是受影响的行数。 | CLIENT_IGNORE_SPACE | 允许在函数名后使用空格。使所有的函数名成为保留字。 | CLIENT_INTERACTIVE | 关闭连接之前,允许interactive_timeout秒的不活动时间。 | CLIENT_LOCAL_FILES | 允许LOAD DATA LOCAL处理功能。 | CLIENT_MULTI_STATEMENTS | 通知服务器,客户端可能在单个字符串内发送多条语句。 | CLIENT_MULTI_RESULTS | 通知服务器,客户端能够处理来自多语句执行。 | CLIENT_NO_SCHEMA | 禁止db_name.tbl_name.col_name语法。 | CLIENT_ODBC | 客户端是ODBC客户端。它将mysqld变得更为ODBC友好。 | CLIENT_SSL | 使用SSL,该选项不应由应用程序设置,而是在客户端库内部设置。
|
PS:很少发帖,没有做自己的源码例子。高手们勿喷,只是一个学习交流帖子。。 O(∩_∩)O~
|
|