我正在编写一个包含多个选择查询的 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