diff options
author | Jeremy Kemper <jeremy@bitsweat.net> | 2007-10-26 05:56:46 +0000 |
---|---|---|
committer | Jeremy Kemper <jeremy@bitsweat.net> | 2007-10-26 05:56:46 +0000 |
commit | 49eafd8c3620bf8e46d21d447fc634a12c8280ab (patch) | |
tree | 5e76c1587d3e3db619944091923659846ecede51 /activerecord/lib/active_record/connection_adapters/mysql_adapter.rb | |
parent | 742694e0eb1abd049aa2a4eadbc7a93591c65db4 (diff) | |
download | rails-49eafd8c3620bf8e46d21d447fc634a12c8280ab.tar.gz rails-49eafd8c3620bf8e46d21d447fc634a12c8280ab.tar.bz2 rails-49eafd8c3620bf8e46d21d447fc634a12c8280ab.zip |
Foxy fixtures. Adapter#disable_referential_integrity. Closes #9981.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8036 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'activerecord/lib/active_record/connection_adapters/mysql_adapter.rb')
-rwxr-xr-x | activerecord/lib/active_record/connection_adapters/mysql_adapter.rb | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb b/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb index 2b79823d04..04869bd925 100755 --- a/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb +++ b/activerecord/lib/active_record/connection_adapters/mysql_adapter.rb @@ -224,6 +224,18 @@ module ActiveRecord "0" end + # REFERENTIAL INTEGRITY ==================================== + + def disable_referential_integrity(&block) #:nodoc: + old = select_value("SELECT @@FOREIGN_KEY_CHECKS") + + begin + update("SET FOREIGN_KEY_CHECKS = 0") + yield + ensure + update("SET FOREIGN_KEY_CHECKS = #{old}") + end + end # CONNECTION MANAGEMENT ==================================== |