summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Newnham <mark@newnhams.com>2021-03-26 20:43:14 -0600
committerDamien Regad <dregad@mantisbt.org>2021-08-22 11:16:01 +0200
commit382b4d477e42c430d99daaf3427a74854a971494 (patch)
treec7bb55c5a854a2895e21c43d2219aa58b83f9e6c
parent5f2fb569dddd92f630e808edb038a97e7e8a61dd (diff)
downloadadodb-382b4d477e42c430d99daaf3427a74854a971494.tar.gz
adodb-382b4d477e42c430d99daaf3427a74854a971494.tar.bz2
adodb-382b4d477e42c430d99daaf3427a74854a971494.zip
update createSequence
- updated docblock - Rewrote syntax to conform to recomended syntax replacing GENERATOR with SEQUENCE
-rw-r--r--drivers/adodb-firebird.inc.php25
1 files changed, 19 insertions, 6 deletions
diff --git a/drivers/adodb-firebird.inc.php b/drivers/adodb-firebird.inc.php
index 2bcf9da1..bb98ebdf 100644
--- a/drivers/adodb-firebird.inc.php
+++ b/drivers/adodb-firebird.inc.php
@@ -41,6 +41,8 @@ class ADODB_firebird extends ADOConnection {
var $metaColumnsSQL = "select lower(a.rdb\$field_name), a.rdb\$null_flag, a.rdb\$default_source, b.rdb\$field_length, b.rdb\$field_scale, b.rdb\$field_sub_type, b.rdb\$field_precision, b.rdb\$field_type from rdb\$relation_fields a, rdb\$fields b where a.rdb\$field_source = b.rdb\$field_name and a.rdb\$relation_name = '%s' order by a.rdb\$field_position asc";
//OPN STUFF end
+
+ public $genSeqSQL = "CREATE SEQUENCE %s START WITH %s";
var $hasGenID = true;
var $_bindInputArray = true;
@@ -381,13 +383,24 @@ class ADODB_firebird extends ADOConnection {
!empty($rs);
}
-
- function CreateSequence($seqname = 'adodbseq', $startID = 1)
+ /**
+ * Creates a sequence in the database.
+ *
+ * @link https://adodb.org/dokuwiki/doku.php?id=v5:reference:connection:createsequence
+ *
+ * @param string $seqname The sequence name.
+ * @param int $startID The start id.
+ *
+ * @return ADORecordSet|bool A record set if executed successfully, otherwise false.
+ */
+ public function createSequence($seqname='adodbseq', $startID = 1)
{
- $ok = $this->Execute(("CREATE GENERATOR $seqname" ));
- if (!$ok) return false;
- return $this->Execute("SET GENERATOR $seqname TO ".($startID-1));
- }
+ $sql = sprintf($this->_genSeqSQL,$seqname,$startID);
+ $ok = $this->Execute($sql);
+
+ if (!$ok)
+ return false;
+ }
function DropSequence($seqname = 'adodbseq')
{