Changeset: 8906248b2e2e for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=8906248b2e2e
Added Files:
        sql/test/mergetables/Tests/doubletable.sql
        sql/test/mergetables/Tests/singlekeyconstraint.sql
Modified Files:
        sql/test/mergetables/Tests/All
Branch: default
Log Message:

merge


diffs (61 lines):

diff --git a/sql/test/mergetables/Tests/doubletable.sql 
b/sql/test/mergetables/Tests/doubletable.sql
new file mode 100644
--- /dev/null
+++ b/sql/test/mergetables/Tests/doubletable.sql
@@ -0,0 +1,15 @@
+CREATE TABLE part1 ( x double, y double, z double);
+CREATE TABLE part2 ( x double, y double, z double);
+
+CREATE MERGE TABLE complete ( x double, y double, z double);
+
+ALTER TABLE complete ADD TABLE part1;
+ALTER TABLE complete ADD TABLE part2;
+
+-- double additions should be forbidden
+ALTER TABLE complete ADD TABLE part1;
+ALTER TABLE complete ADD TABLE part2;
+
+DROP TABLE part1;
+DROP TABLE part2;
+DROP TABLE complete;
diff --git a/sql/test/mergetables/Tests/singlekeyconstraint.sql 
b/sql/test/mergetables/Tests/singlekeyconstraint.sql
new file mode 100644
--- /dev/null
+++ b/sql/test/mergetables/Tests/singlekeyconstraint.sql
@@ -0,0 +1,36 @@
+CREATE TABLE part1 ( x double, y double, z double);
+ALTER TABLE part1 ADD PRIMARY KEY (x);
+COPY 2 RECORDS INTO part1 FROM stdin USING DELIMITERS ' ','\n';
+0.0 0.0 0.0
+1.0 0.0 0.0 
+
+CREATE TABLE part2 ( x double, y double, z double);
+ALTER TABLE part1 ADD PRIMARY KEY (x);
+COPY 2 RECORDS INTO part2 FROM stdin USING DELIMITERS ' ','\n';
+2.0 0.0 0.0
+3.0 0.0 0.0 
+
+CREATE MERGE TABLE complete ( x double, y double, z double);
+
+-- next complaints while both parts have local constraint.
+-- a global constaint should at least imply local constraints
+ALTER TABLE complete ADD PRIMARY KEY (x);
+ALTER TABLE complete ADD TABLE part1;
+ALTER TABLE complete ADD TABLE part2;
+
+SELECT * FROM COMPLETE;
+
+-- this one violates global constraint, not local
+INSERT INTO part2 VALUES(0.0, 0.0, 0.0);
+
+-- this one violates local constraint, not global
+INSERT INTO part1 VALUES(0.0, 0.0, 0.0);
+
+-- how about direct insert into table
+INSERT INTO complete VALUES(4.0, 0.0, 0.0);
+
+SELECT * FROM complete;
+
+DROP TABLE complete;
+DROP TABLE part1;
+DROP TABLE part2;
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to