이 Oracle 대량 삽입물을 동일한 포스트그레스에 다시 구현하려고합니다.PostgreSQL과 동일한 Oracle 대량 삽입
현재 가지고 :
는 a.each do |b|
params << [nil, b.value]
inserts << %{INSERT INTO table(a, b, c, d)
VALUES (:a1, :a2, :a3, :a4); }
end
sql = inserts.join
ActiveRecord::Base.transaction do
# insert
ActiveRecord::Base.connection.exec_update(sql, 'table', params)
end
액티브를 사용하여 유사한 구현은/포스트 그레스는 무엇과 같을 것이다?
나는 아래의 오류를
ActiveRecord::StatementInvalid:
# ERROR: syntax error at or near ":"
# LINE 4: VALUES (:a1, :a2, :a3, :a4, :a5, :a6, :a7, :...
# ^
굉장합니다. 이것은 효과가 있었다. 이제 문제는 "params"에 여러 행이 있다는 것입니다. ActiveRecord :: Base.connection.exec_update (sql, 'table', params) 비슷한 방식으로 postgressql/activerecord에 대한 대량 삽입을 구현하는 가장 좋은 방법은 무엇입니까? – Water223
PG :: SyntaxError : 오류 : 준비된 명령문에 여러 명령을 삽입 할 수 없습니다. : INSERT INTO – Water223
@ Water223 자세한 내용으로 업데이트했습니다. – harmic