55 lines
1.3 KiB
SQL
55 lines
1.3 KiB
SQL
# name: test/sql/attach/attach_dependencies.test
|
|
# description: Test that we can ATTACH databases with dependencies in the schema
|
|
# group: [attach]
|
|
|
|
# foreign key
|
|
|
|
load __TEST_DIR__/fk.db
|
|
|
|
statement ok
|
|
CREATE TABLE pk_tbl (id INTEGER PRIMARY KEY, name VARCHAR UNIQUE);
|
|
|
|
statement ok
|
|
CREATE TABLE fk_tbl (id INTEGER REFERENCES pk_tbl(id));
|
|
|
|
# alter columns
|
|
|
|
load __TEST_DIR__/alter_column.db
|
|
|
|
statement ok
|
|
CREATE TABLE tbl_alter_column (id INT, other INT, nn_col INT NOT NULL, rm INT, rename_c INT, my_def INT, drop_def INT DEFAULT 10, new_null_col INT);
|
|
|
|
statement ok
|
|
ALTER TABLE tbl_alter_column ADD COLUMN k INTEGER;
|
|
|
|
statement ok
|
|
ALTER TABLE tbl_alter_column ALTER other SET DATA TYPE VARCHAR USING concat(other, '_', 'yay');
|
|
|
|
statement ok
|
|
ALTER TABLE tbl_alter_column ALTER COLUMN nn_col DROP NOT NULL;
|
|
|
|
statement ok
|
|
ALTER TABLE tbl_alter_column DROP rm;
|
|
|
|
statement ok
|
|
ALTER TABLE tbl_alter_column RENAME rename_c TO my_new_col;
|
|
|
|
statement ok
|
|
ALTER TABLE tbl_alter_column ALTER COLUMN my_def SET DEFAULT 10;
|
|
|
|
statement ok
|
|
ALTER TABLE tbl_alter_column ALTER COLUMN drop_def DROP DEFAULT;
|
|
|
|
statement ok
|
|
ALTER TABLE tbl_alter_column ALTER COLUMN new_null_col SET NOT NULL;
|
|
|
|
# now attach all databases
|
|
|
|
load __TEST_DIR__/other.db
|
|
|
|
statement ok
|
|
ATTACH '__TEST_DIR__/fk.db';
|
|
|
|
statement ok
|
|
ATTACH '__TEST_DIR__/alter_column.db';
|