Skip to content

Commit 6204f60

Browse files
committed
adjust oracle SEQUENCE translation to DOD style
1 parent 5dbf8b6 commit 6204f60

2 files changed

Lines changed: 4 additions & 3 deletions

File tree

lib/Data/ObjectDriver/Driver/DBD/Oracle.pm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ sub fetch_id {
4343
my $dbd = shift;
4444
my ($class, $dbh, $sth, $driver) = @_;
4545
my $seq = $dbd->sequence_name($class, $driver);
46-
my ($last_insert_id) = $dbh->selectrow_array("SELECT $seq.CURRVAL "
46+
my ($last_insert_id) = $dbh->selectrow_array("SELECT \"$seq\".CURRVAL "
4747
. " FROM DUAL");
4848
return $last_insert_id;
4949
}

t/lib/DodTestUtil.pm

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -196,13 +196,13 @@ sub create_sql {
196196
add_drop_table => $drop_table,
197197
);
198198
$sql = $sqlt->translate(\$sql) or die $sqlt->error;
199-
return split_sql_for_oracle(patch_oracle_drop($sql)) if $driver eq 'Oracle';
199+
return split_sql_for_oracle(patch_oracle_sql($sql)) if $driver eq 'Oracle';
200200
return split_sql($sql);
201201
}
202202
$sql;
203203
}
204204

205-
sub patch_oracle_drop {
205+
sub patch_oracle_sql {
206206
my $sql = shift;
207207
$sql =~ s{(DROP (TABLE|SEQUENCE) "(.+)".*);}{
208208
BEGIN
@@ -212,6 +212,7 @@ sub patch_oracle_drop {
212212
END;
213213
/
214214
}g;
215+
$sql =~ s/"\bsq_(\w+)"/'"'. $1. '_seq"'/ge;
215216
return $sql;
216217
}
217218

0 commit comments

Comments
 (0)