技術

[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 を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

コマンド一つで「20190729」みたいなスラッシュなしの日付を入力したい!

こんにちは。たなかです。 Macで「きょう」と入力すると、今日の日付が予測変換さ …

no image

[リアクティブフォーム]バリデーションチェックを任意のタイミングで走らせる。

Angularのリアクティブフォームで使っていると、 バリデーションを後付けした …

「Google Inside Music」で自分の好きな音楽を聞いてみる(local環境構築 編)

以前紹介した「Google Inside Music」。 「Google Ins …

[Rails] モデルが初期化されてないとな(not initialized)

どうも中田です Railsで、modelの initialize に処理を追加す …

no image

【Rails】helperからbrタグを含めた文字列を返したい時

こんにちは プライベートではもっぱらRailsを触っています。 触ってからそんな …