問題タブ [tiny-tds]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
702 参照

ruby-on-rails - has_many : 複数のデータベースにまたがる

複数のデータベースにまたがって has_many :through を使用して、この必要なヘルプを書き始めました。

だから私がやっていること:

私は持っている

レール3.2

deployments と呼ばれる 1 つの MSSQL DB テーブル

reports と呼ばれる 1 つの POSTGRESQL DB テーブル

呼び出された関連付けを結合するための POSTGRESQL DB テーブルを使用

関連付けの作成は正常に機能し、テーブルに両方の ID が入力されますが、データを取得しようとすると、次のようになります。

しかし、これを逆の方法で行うと、これは私が奇妙に感じるものです。

これは私が期待することですが、他の方法で機能しない理由を誰か教えてください。

0 投票する
1 に答える
197 参照

ruby - 英数字キーを使用すると、続編の many_to_one 関連付けが「変換に失敗しました」で失敗する

私は既存の MSSQL データベースを使用していますが、これは他の人によって構築されたレガシー アプリケーションであるため、ほとんどまたはまったく制御できません。1 対多の関連付けで 2 つのテーブルを関連付けようとしています。

関連付けを定義するコード スニペットは次のとおりです。

注:これらのクラスは両方とも、関連付けなしで期待どおりに機能します...

ただし、関連付けを使用しようとしたときに得られる出力は次のとおりです。

#10665277どれを使っても同じ数字になるので何を表しているのかわからないroll_numので、それが解決のカギになるのではないかと思うのですが、今のところ途方に暮れています。

キーが英数字であるため、関連付けを定義するときに何か間違ったことをしていますか? これに関するSEQUELドキュメントには何も見つかりませんでした。

明らかに、私は単純にすべての記録をroll_history適切なものから収集することができましたroll_num。実際、それは私が今行っていることです... しかし、関連付けが機能しない理由を理解したいと思います.

0 投票する
2 に答える
128 参照

sql - DB に増分値を格納する際の MS SQL での Rails 同時実行の問題

Rails 3.2.3 を使用し、tinyTDS を使用して接続する MS SQL Sever のインスタンスの上にあるアプリケーションを実行しています。アプリケーションは、ユニコーンを使用して 4 つのプロセスを持つマルチスレッド化されています。問題は、各リクエストに一意のアカウント番号を割り当てるためにインクリメントする必要がある番号を格納するために、アプリケーションがデータベース内のフィールドを使用することです。アプリケーションをローカルで実行しても、マルチスレッドではないため問題はありません。

ユニコーンを使用してステージング環境で実行しているときに、複数の同時リクエストでアプリケーションをヒットすると、10 人に 1 人程度が重複したカード番号で戻ってきます。私は以下を試しました。

レガシーコード

レガシー コード + トランザクション

結果:効果なし

レガシー コード + with_lock

結果: with_lock が定義されていないというエラー

レガシー コード + with_lock

結果:ロックが定義されていないというエラー

0 投票する
1 に答える
658 参照

ruby-on-rails - tiny_tds: セグメンテーション違反

これはこの質問に似ています。ただし、その質問に投稿された回答は、私にとってはうまくいきませんでした。Macにfreetdsをインストールしました。GemFile で次のように指定しました。

そして、以下を使用して Azure SQLに正常に接続できます。

また、irb でAzure SQLに正常に接続できます。

しかし、rake db:migrate を実行すると、次のエラーが表示されます。

続いて、

最後に、

誰でもアイデアや提案を共有できますか?

更新: 私の Database.yml は次のようになります。

IRBで以下を実行しました。

そして、次の応答を得ました。

0 投票する
3 に答える
4222 参照

gem - 「gem install tiny_tds」ができない OS X Mavericks

エラー

$ sudo gem install tiny_tds

ネイティブ拡張機能の構築。これにはしばらく時間がかかる場合があります...

エラー: tiny_tds のインストール中にエラーが発生しました:

エラー: gem ネイティブ拡張のビルドに失敗しました。

/システム/ライブラリ/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby extconf.rb

iconv.h で iconv_open() をチェックしています... いいえ

-liconv で iconv_open() をチェックしています...はい

sybfront.h をチェックしています...はい

sybdb.h をチェックしています...はい

-lsybdb で tdsdbopen() をチェックしています...いいえ


ホームブリュー

上記のエラーは、

$ brew install freetds


手動インストール

$ tar zxf freetds-stable.tgz

$ cd freetds-0.91

$ ./configure

$メイク

$ sudo make install


に次のファイルがないようです/usr/local/lib/:

  • libsybdb.so

代わりに、次のファイルがあります。

  • libsybdb.a
  • libsybdb.dylib
  • libsybdb.la

リサーチ

0 投票する
2 に答える
2245 参照

ruby-on-rails - herokuからsqlserverに接続

Heroku でホストされている Rails アプリから接続したいリモート SQLSERVER インスタンスがあります。私の宝石ファイル:

データベース.yml

production.rb

しかし、展開プロセス中に次のエラーが発生します。

config/database.yml を記述して DATABASE_URL から読み取る

Active レコードには sqlite3 が必要なようですが、tiny_tds がある場合は sql サーバーを使用する必要があります。

開発環境では、すべて正常に動作します。確かに私には欠けているものがあります。

アップデート

カスタム ビルドパックの BUILDPACK_URL: https://github.com/firmhouse/heroku-buildpack-ruby-freetds.git と DATABASE_URL 構成変数を既にセットアップしています。

更新 2

展開中に dbconfig var の pp を作成すると、これが表示されます

heroku が私の database.yml ファイルを上書きしているようですが、何か提案はありますか?

更新 3

DATABASE_URL=sqlserver//user:pass@host:1433/database を設定しましたが、これは間違っていますか?

0 投票する
1 に答える
689 参照

ruby - アプリ Heroku をプッシュできません - Bundler 経由で tiny_tds をインストールできませんでした

これは私のGemfileの外観です:

アプリを Heroku にプッシュした場合の出力:

私のローカルホストでは完全に動作します。リポジトリを削除して新しいリポジトリを作成するか、herokuを再起動してみました。heroku に tiny_tds をインストールするにはどうすればよいですか? なにが問題ですか?

編集 25/7/14

このエラーは、dyno に freetds ライブラリがないために発生します。このようなライブラリを使用するには、カスタム ビルドパックを使用する必要があります。インターネット上にはオープンソースのビルドパックがたくさんあります。例: https://github.com/firmhouse/heroku-buildpack-ruby-freetds

Damien への tnx (Heroku サポート)

0 投票する
1 に答える
511 参照

ruby - os.x 10.9.4 に tiny_tds をインストールできない

OS.X Mavericks を実行している Mac に tiny_tds をインストールしようとしていますが、次のエラーが表示されます。

次のコマンドを使用して tiny_tds をインストールしています。

調べましたが方法iconv.hがありませんiconv_open()

ちなみに、ruby 2.0.0p451 を使っています。