私はRuby on RailsをからいくつかのActiveRecordを使用してPostgreSQLのクエリを持って私のクエリに変数を入れることは可能ですか?
my_table.location = ActiveRecord::Base.connection.execute("UPDATE my_table SET location = ST_SetSRID(ST_MakePoint(my_table.longitude, my_table.latitude), 4326)::geography")
私はデータベースから列経度と緯度を使用したくないので、そのような私のクエリに変数を入れたいけどむしろ経度と緯度の値を含む変数です。
my_table.location = ActiveRecord::Base.connection.execute("UPDATE my_table SET location = ST_SetSRID(ST_MakePoint((?), (?), 4326)::geography"), longitude, latitude)
私はそれを動作させる方法はありませんが、背後にある考え方を理解する必要があります。クエリに変数を使用する方法がありますか?それが動作しなかった
で利用ユーザ変数を持っている私のクエリの1の例では教えてもらえていることができますか? –
[動的なバインディングを使用してraw update sqlをレールで実行する方法](http://stackoverflow.com/questions/4483049/how-to-execute-a-raw-update-sql-with-dynamic-binding) -in-rails) – max
緯度と経度の値がnilの場合、このエラーは次のように表示されます: 'エラー:型倍精度の入力構文が無効です:" "(ActiveRecord :: StatementInvalid)' – Erzu