develooper Front page | perl.dbd.oracle.changes | Postings from April 2012

[svn:dbd-oracle] r15281 - in dbd-oracle/trunk: . t

From:
mjevans
Date:
April 22, 2012 01:19
Subject:
[svn:dbd-oracle] r15281 - in dbd-oracle/trunk: . t
Message ID:
20120422081930.3E53F184B0A@xx12.develooper.com
Author: mjevans
Date: Sun Apr 22 01:19:30 2012
New Revision: 15281

Modified:
   dbd-oracle/trunk/Changes
   dbd-oracle/trunk/Oracle.xs
   dbd-oracle/trunk/t/51scroll.t

Log:
Fixed the second part of rt 76410


Modified: dbd-oracle/trunk/Changes
==============================================================================
--- dbd-oracle/trunk/Changes	(original)
+++ dbd-oracle/trunk/Changes	Sun Apr 22 01:19:30 2012
@@ -3,9 +3,12 @@
 NEXT
  [BUG FIXES]
 
- - Fixed 76695 - offset passed to ora_fetch_scroll should not affect
+ - Fixed RT76695 - offset passed to ora_fetch_scroll should not affect
    normal fetches (Martin J. Evans)
 
+ - Fixed part of RT76410 - fetch after fetch absolute always returns
+   the same row (Martin J. Evans);
+
  [MISCELLANEOUS]
 
  - minor change to confusing debug output for input parameters

Modified: dbd-oracle/trunk/Oracle.xs
==============================================================================
--- dbd-oracle/trunk/Oracle.xs	(original)
+++ dbd-oracle/trunk/Oracle.xs	Sun Apr 22 01:19:30 2012
@@ -161,6 +161,7 @@
 	imp_sth->fetch_offset=fetch_offset;
 	av = dbd_st_fetch(sth,imp_sth);
     imp_sth->fetch_offset = 1;                  /* default back to 1 for fetch */
+ 	imp_sth->fetch_orient=OCI_FETCH_NEXT;       /* default back to fetch next */
 	ST(0) = (av) ? sv_2mortal(newRV((SV *)av)) : &PL_sv_undef;
 }
 

Modified: dbd-oracle/trunk/t/51scroll.t
==============================================================================
--- dbd-oracle/trunk/t/51scroll.t	(original)
+++ dbd-oracle/trunk/t/51scroll.t	Sun Apr 22 01:19:30 2012
@@ -24,7 +24,7 @@
                                                AutoCommit=>1,
                                                PrintError => 0 })};
 if ($dbh) {
-    plan tests => 34;
+    plan tests => 36;
 } else {
     plan skip_all => "Unable to connect to Oracle";
 }
@@ -113,6 +113,7 @@
 
 cmp_ok($sth->ora_scroll_position(), '==', 1, '... we should get the 1 for the ora_scroll_position');
 
+# rt 76695 - fetch after fetch scroll maintains offset
 # now fetch forward 2 places then just call fetch
 # it should give us the 4th rcord and not the 5th
 
@@ -121,6 +122,12 @@
 ($value) = $sth->fetchrow;
 is($value, 4, '... we should get the 4th record');
 
+# rt 76410 - fetch after fetch absolute always returns the same row
+$value = $sth->ora_fetch_scroll(OCI_FETCH_ABSOLUTE, 2);
+is($value->[0], 2, "... we should get the 2nd row");
+($value) = $sth->fetchrow;
+is($value, 3, "... we should get the 3rd row");
+
 $sth->finish();
 drop_table($dbh);
 



nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About