Ruby on Rails で Oracle アダプタを使用して ActiveRecord を使用しています。StatementInvalid Exception
行を削除しようとすると、エラーが発生します。
私のテーブルがどのように見えるかは次のとおりです。
room | user
1010 | a
1010 | b
1011 | a
1011 | c
1011 | d
私のルビーActiveRecordクラス:
class RoomUserTable < ActiveRecord:Base
self.table_name = 'room_user_table'
end
たとえば、2行目を削除したいので、発行しています
RoomUserTable.destroy_all(:room => 1010, :user => 'b')
しかし、これは ActiveRecord::StatementInvalid Exception をスローしています
OCIError: ORA-01741: illegal zero-length identifier: DELETE FROM "ROOM_USER_TABLE" WHERE "ROOM_USER_TABLE"."" = :a1
どんな助けでも大歓迎です。
私のtest_controller.rb
class TestController < ActionController::Base
def test
RoomUserTable.destroy_all(:room => 1010, :user => 'b')
end
end