技術

[Rails] TinyTds::Error (closed connection)

投稿日:

どうも中田です。

たぶん、この記事で救われるエンジニアの方はおそらく1人いればよい方かと。
そのくらいのオチだと思います。

世界で1人救えればという気持ちで書きます。

事象

RailsでSQLServerにアクセスしてるプロジェクトがあって、
TinyTdsを使ってActiveRecordを操作してます。

そこで、何をやっても

TinyTds::Error (closed connection)

って言われるんですよ。

モデルを参照した瞬間に。。。

結構ハマりました。

結論

database.ymlのencodingがおかしい!

  adapter: sqlserver
  encoding: utf8mb4
  vmode: dblib
  username: xxxx
  password: xxxx
  port: 1433
  host: xxx.xxx.xxx.xxx
  database: xxxx

よくよく考えてみると、このプロジェクトのDBのencodeは

utf8

utf8mb4ではダメだったー。

ご覧になった方、プロジェクト依存のお話で大変失礼致しました。
この記事で救われましたでしょうか。

それにしても不親切なログだったなぁ〜。

-技術

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

docomo雑談対話APIを使って会話BOTを作りました。(LINE BOT + Heroku + Rails + docomo雑談API)

こんばんは 前回、LINE BOTを無料で試してみました。heroku + Ra …

[ Ionic ] アプリのビューをiPhoneXのセーフエリアに対応させる

こんにちは。たなかです。 Ionicで開発しているとき、ハマりがちなポイントの一 …

no image

【AWS】nginx/rails/mysqlをインストール

どうも、中田です。 最近AWSにテストサーバを立ち上げて検証したり、 お客様に一 …

【Alexa Skill】ビックリするなかれ (Unsupported Directive)

どうも中田です。 みなさんAlexa使ってます?Alexaスキル作ってます? 今 …

git_logo

[Git] どのコミットでバグが入ったか原因究明する方法【git blame】

こんにちは。さとうです。 今回はgitを使って、どのコミットでバグが入ったか原因 …