ruby-mysqlで


my = Mysql.new('localhost','userid','passwd','dbname')
res = my.query("INSERT INTO tbl (f1,f2,f3) VALUES(1,1,1)")

これでINSERTしようとすると、

/usr/local/lib/ruby/gems/1.8/gems/ruby-mysql-2.9.3/lib/mysql/protocol.rb:569:in `read': invalid packet: sequence number mismatch(3 != 1(expected)) (Mysql::ProtocolError)
from /usr/local/lib/ruby/1.8/timeout.rb:53:in `timeout'
from /usr/local/lib/ruby/gems/1.8/gems/ruby-mysql-2.9.3/lib/mysql/protocol.rb:565:in `read'
from /usr/local/lib/ruby/gems/1.8/gems/ruby-mysql-2.9.3/lib/mysql/protocol.rb:287:in `get_result'
from /usr/local/lib/ruby/gems/1.8/gems/ruby-mysql-2.9.3/lib/mysql/protocol.rb:275:in `query_command'
from /usr/local/lib/ruby/gems/1.8/gems/ruby-mysql-2.9.3/lib/mysql.rb:319:in `query'
from test.rb:(res = の行番号)


というエラーがでて完全にお手上げです。どうするべきでしょうか?
ruby-mysql 2.9.3
ruby 1.8.7
mysql 5.0.77

回答の条件
  • 1人5回まで
  • 登録:2010/06/25 21:38:02
  • 終了:2010/07/01 22:59:33

回答(2件)

id:hanako393 No.1

hanako393回答回数1142ベストアンサー獲得回数872010/06/25 21:44:48

ポイント35pt

http://yakinikunotare.boo.jp/orebase/index.php?Ruby%2FMySQL%A4%C...

パッチをあてないと駄目なのでは?

そのままでは認証で失敗するので、接続できなくて

タイムアウト。

id:GanbareNIPPON

入れ直したらうまくいきました。

ありがとうございました

2010/07/01 22:59:19
id:koriki-kozou No.2

koriki-kozou回答回数480ベストアンサー獲得回数792010/06/25 21:46:18

ポイント35pt

単に記述ミスでは?

my = Mysql::new('localhost','userid','passwd','dbname')

http://www.gesource.jp/programming/ruby/database/mysql.html

id:GanbareNIPPON

入れ直したらうまくいきました。

ありがとうございました

2010/07/01 22:59:17
  • id:koriki-kozou
    koriki-kozou 2010/06/25 22:29:57
    ごめん。こんな情報みつけた
    http://www.srcw.net/2010/05/27/rubymysql%E3%81%A7uninitialized-constant-mysqlprotocolunixsocket-nameerror/
    my = Mysql.new('127.0.0.1','userid','passwd','dbname')
    で接続してみて

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません