gpt4 book ai didi

mysql - ruby:与mysql的连接在单个查询后关闭

转载 作者:行者123 更新时间:2023-11-29 14:27:41 26 4
gpt4 key购买 nike

我正在编写一个包含多个选择查询的 ruby​​ 脚本。在脚本的开头,我初始化一个新的数据库连接:

db = Mysql.new 'localhost', 'root', 'pass', 'mydb', 3308

第一个选择查询成功,但是当它到达第二个时,出现以下错误:

在“查询”中:查询:未连接(Mysql::Error)

我可以通过在每个查询之前复制连接初始化行来解决这个问题,但我真的不认为这是正确的解决方案。

谢谢,李

添加我的完整脚本(我是新手,对糟糕的风格感到抱歉):(用更简单的重现替换了原始脚本):在下面的代码中,如果我注释掉“SELECT”查询并只保留“INSERT INTO”查询,那么一切都会很好。但如果我尝试按原样运行代码,则会收到上述错误。

#!/usr/local/bin/ruby -w 

require "mysql"

dbname = "sample_db"

m = Mysql.new 'localhost', 'root', 'passw', 'sample_db', 3306

m.select_db(dbname)

m.query("CREATE TABLE words
(
german varchar(30),
english varchar(30),
french varchar(30)
)"
)

m.query("INSERT INTO words VALUES('Adler', 'eagle', 'aigle')")

results = m.query("SELECT german, english FROM words")

m.query("INSERT INTO words VALUES('Haus', 'house', 'maison')")

m.close

最佳答案

找到答案:

http://halyph.blogspot.com/2009/08/rails-23-migration-issues-with-mysql_26.html

似乎这是一个常见问题,我只需将 libmysql.dll 替换为: http://instantrails.rubyforge.org/svn/trunk/InstantRails-win/InstantRails/mysql/bin/libmySQL.dll

然后重新启动我的 mysql 服务。请注意,我已经替换了我的 dll(在出现安装问题之后),但似乎只有 ruby​​forge 中的 dll 解决了这个问题

请注意,此问题的另一个症状是偶发的段错误。更换dll后这些也消失了

关于mysql - ruby:与mysql的连接在单个查询后关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10619113/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com