aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib/active_record/connection_adapters/abstract
diff options
context:
space:
mode:
authorRyuta Kamizono <kamipo@gmail.com>2018-10-03 05:29:27 +0900
committerRyuta Kamizono <kamipo@gmail.com>2018-10-03 06:24:41 +0900
commitbfea0af4ba7d717d6a065b4370e3ccfd8869dde6 (patch)
tree7c4a6911f73370146786659e88177a958f7bcb89 /activerecord/lib/active_record/connection_adapters/abstract
parent92fece96da28d9f641bc8a8db1187b91c94cabfb (diff)
downloadrails-bfea0af4ba7d717d6a065b4370e3ccfd8869dde6.tar.gz
rails-bfea0af4ba7d717d6a065b4370e3ccfd8869dde6.tar.bz2
rails-bfea0af4ba7d717d6a065b4370e3ccfd8869dde6.zip
Move UPDATE/DELETE with JOIN handling to the Arel side
Diffstat (limited to 'activerecord/lib/active_record/connection_adapters/abstract')
-rw-r--r--activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb17
1 files changed, 0 insertions, 17 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb b/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb
index feacdf6931..0059f0b773 100644
--- a/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb
+++ b/activerecord/lib/active_record/connection_adapters/abstract/database_statements.rb
@@ -410,16 +410,6 @@ module ActiveRecord
end
end
- # The default strategy for an UPDATE with joins is to use a subquery. This doesn't work
- # on MySQL (even when aliasing the tables), but MySQL allows using JOIN directly in
- # an UPDATE statement, so in the MySQL adapters we redefine this to do that.
- def join_to_update(update, select, key) # :nodoc:
- subselect = subquery_for(key, select)
-
- update.where key.in(subselect)
- end
- alias join_to_delete join_to_update
-
private
def default_insert_value(column)
Arel.sql("DEFAULT")
@@ -460,13 +450,6 @@ module ActiveRecord
total_sql.join(";\n")
end
- # Returns a subquery for the given key using the join information.
- def subquery_for(key, select)
- subselect = select.clone
- subselect.projections = [key]
- subselect
- end
-
# Returns an ActiveRecord::Result instance.
def select(sql, name = nil, binds = [])
exec_query(sql, name, binds, prepare: false)