Add currentSequenceValue() function.
authorGreg Sabino Mullane <greg@users.mediawiki.org>
Tue, 18 Dec 2007 15:44:18 +0000 (15:44 +0000)
committerGreg Sabino Mullane <greg@users.mediawiki.org>
Tue, 18 Dec 2007 15:44:18 +0000 (15:44 +0000)
includes/DatabasePostgres.php

index fa0d6dd..48c99db 100644 (file)
@@ -797,6 +797,18 @@ class DatabasePostgres extends Database {
                return $this->mInsertId;
        }
 
+       /**
+        * Return the current value of a sequence. Assumes it has ben nextval'ed in this session.
+        */
+       function currentSequenceValue( $seqName ) {
+               $safeseq = preg_replace( "/'/", "''", $seqName );
+               $res = $this->query( "SELECT currval('$safeseq')" );
+               $row = $this->fetchRow( $res );
+               $currval = $row[0];
+               $this->freeResult( $res );
+               return $currval;
+       }
+
        /**
         * Postgres does not have a "USE INDEX" clause, so return an empty string
         */