提交 77ed0ca9 authored 作者: Thomas Mueller Graf's avatar Thomas Mueller Graf

The script command did not include sequences of temporary tables.

上级 96079ea4
...@@ -21,7 +21,7 @@ Change Log ...@@ -21,7 +21,7 @@ Change Log
<h2>Next Version (unreleased)</h2> <h2>Next Version (unreleased)</h2>
<ul> <ul>
<li>- <li>The "script" command did not include sequences of temporary tables.
</li> </li>
</ul> </ul>
......
...@@ -384,11 +384,8 @@ public class Column { ...@@ -384,11 +384,8 @@ public class Column {
} }
} }
Sequence seq = new Sequence(schema, id, sequenceName, start, increment); Sequence seq = new Sequence(schema, id, sequenceName, start, increment);
if (temporary) { seq.setTemporary(temporary);
seq.setTemporary(true); session.getDatabase().addSchemaObject(session, seq);
} else {
session.getDatabase().addSchemaObject(session, seq);
}
setAutoIncrement(false, 0, 0); setAutoIncrement(false, 0, 0);
SequenceValue seqValue = new SequenceValue(seq); SequenceValue seqValue = new SequenceValue(seq);
setDefaultExpression(session, seqValue); setDefaultExpression(session, seqValue);
......
...@@ -71,11 +71,19 @@ public class TestTempTables extends TestBase { ...@@ -71,11 +71,19 @@ public class TestTempTables extends TestBase {
Connection conn = getConnection("tempTables"); Connection conn = getConnection("tempTables");
Statement stat = conn.createStatement(); Statement stat = conn.createStatement();
stat.execute("create local temporary table test(id identity)"); stat.execute("create local temporary table test(id identity)");
ResultSet rs = stat.executeQuery("script");
boolean foundSequence = false;
while (rs.next()) {
if (rs.getString(1).startsWith("CREATE SEQUENCE")) {
foundSequence = true;
}
}
assertTrue(foundSequence);
stat.execute("insert into test values(null)"); stat.execute("insert into test values(null)");
stat.execute("shutdown"); stat.execute("shutdown");
conn.close(); conn.close();
conn = getConnection("tempTables"); conn = getConnection("tempTables");
ResultSet rs = conn.createStatement().executeQuery( rs = conn.createStatement().executeQuery(
"select * from information_schema.sequences"); "select * from information_schema.sequences");
assertFalse(rs.next()); assertFalse(rs.next());
conn.close(); conn.close();
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论