解决nim db_mysql could not load: libmysql.dll的问题


title: 解决nim db_mysql could not load: libmysql.dll的问题

nim中使用db_mysql 操作数据库的代码看起来很简单:

import db_mysql

let db = open("localhost", "root", "root", "xxx")
echo db.getAllRows(sql"SELECT * FROM `xxx`.`xi_messages`")
db.close()

但是编译是提示:
could not load: libmysql.dll
我很绝望。

我的环境是windows 7 x64 & nim 0.17.2 x64。我用Everything搜索了一下libmysql.dll。我电脑上很多工具都带有libmysql.dll 这个文件,并且工作良好。

于是我随手复制了一个libmysql.dll 到 nimmysql.nim所在的目录。编译和运行EXE,仍然could not load: libmysql.dll。

我很绝望。

我搜索相关内容找到这个帖子:
https://stackoverflow.com/questions/37834804/cannot-load-vendor-library-libmysql-dll-or-libmysqld-dll

我不可置信地照这个回答去尝试解决,
先上mysql 网站下载 mysql zip包,https://dev.mysql.com/downloads/mysql/

我的系统和Nim 是x64的。所以我下载x64 的mysql , 解压后找到libmysql.dll,复制到我的代码的目录下。
然后问题解决了。。。

2018-01-15 13:31:14 codegay

转载于:https://www.cnblogs.com/gayhub/p/8287734.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
解释代码 #加载数据 path_absolute_log = r"F:\数据处理比赛\BDC2023\处理数据log" paths_log_file = os.listdir(path_absolute_log) #获取绝对路径 def make_paths_absolute(paths_file): path_absolute = path_absolute_log paths_absolute_file = os.path.join(path_absolute,paths_file) return paths_absolute_file paths_absolute_log_file = list(map(make_paths_absolute,paths_log_file)) #对表格处理 path_absolute_log_file = r"F:\数据处理比赛\BDC2023\处理数据log\4ff8b802-0d87-11ee-af51-525400d4ffe4_log.csv" def form_data(path_absolute_log_file): data_log = pd.read_csv(path_absolute_log_file) data_log.insert(data_log.shape[1], 'id_score', np.nan) data_log.insert(data_log.shape[1], 'id', os.path.basename(path_absolute_log_file)[:-8]) data_log_message = data_log['message'] def jieba_data(data): data_log_jieba_message = [] data_log_jieba_message.append(','.join(jieba.cut_for_search(data))) print(data_log_jieba_message) return data_log_jieba_message data_log_jieba_message = data_log_message.map(jieba_data) def form_work(data): feature_words = ['bug','ERROR','WARNING','error','WARN','empty','错误','失败','未登录'] set_data = set(str(data)[2:-2].split(',')) set_feature_words = set(feature_words) set_mysql = set('mysql') score = [] if set_data.intersection(set_feature_words): score.append() if set_mysql.intersection(set_feature_words): score.append('LTE4MDK5Mzk2NjU1NiM1ODIONDC=') score = str(score)[2:-2] print(score) return score data_log['id_score'] = data_log_jieba_message.map(form_work) return data_log data_log = form_data(path_absolute_log_file)
最新发布
07-11
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值