X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FStorage%2FDBI%2FOracle%2FGeneric.pm;h=5973319c839c7de5035cb641d0b0147d178221a5;hb=6c0bb6a74539d2ba3cce7ef4068e7c14c84a9669;hp=a2b2f90bb989fdb946efbaed4a22fd0402591b9d;hpb=f58a165c33e0867a82c265b1fec7c366f84a7085;p=dbsrgits%2FDBIx-Class.git diff --git a/lib/DBIx/Class/Storage/DBI/Oracle/Generic.pm b/lib/DBIx/Class/Storage/DBI/Oracle/Generic.pm index a2b2f90..5973319 100644 --- a/lib/DBIx/Class/Storage/DBI/Oracle/Generic.pm +++ b/lib/DBIx/Class/Storage/DBI/Oracle/Generic.pm @@ -326,6 +326,25 @@ sub relname_to_table_alias { return $new_alias; } +=head2 with_deferred_fk_checks + +Runs a coderef between: + + alter session set constraints = deferred + ... + alter session set constraints = immediate + +to defer FK checks. + +=cut + +sub with_deferred_fk_checks { + my ($self, $sub) = @_; + $self->_do_query('alter session set constraints = deferred'); + $sub->(); + $self->_do_query('alter session set constraints = immediate'); +} + =head1 AUTHOR See L.