⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 truncate.out

📁 PostgreSQL 8.1.4的源码 适用于Linux下的开源数据库系统
💻 OUT
字号:
-- Test basic TRUNCATE functionality.CREATE TABLE truncate_a (col1 integer primary key);NOTICE:  CREATE TABLE / PRIMARY KEY will create implicit index "truncate_a_pkey" for table "truncate_a"INSERT INTO truncate_a VALUES (1);INSERT INTO truncate_a VALUES (2);SELECT * FROM truncate_a; col1 ------    1    2(2 rows)-- Roll truncate backBEGIN;TRUNCATE truncate_a;ROLLBACK;SELECT * FROM truncate_a; col1 ------    1    2(2 rows)-- Commit the truncate this timeBEGIN;TRUNCATE truncate_a;COMMIT;SELECT * FROM truncate_a; col1 ------(0 rows)-- Test foreign-key checksCREATE TABLE trunc_b (a int REFERENCES truncate_a);CREATE TABLE trunc_c (a serial PRIMARY KEY);NOTICE:  CREATE TABLE will create implicit sequence "trunc_c_a_seq" for serial column "trunc_c.a"NOTICE:  CREATE TABLE / PRIMARY KEY will create implicit index "trunc_c_pkey" for table "trunc_c"CREATE TABLE trunc_d (a int REFERENCES trunc_c);CREATE TABLE trunc_e (a int REFERENCES truncate_a, b int REFERENCES trunc_c);TRUNCATE TABLE truncate_a;		-- failERROR:  cannot truncate a table referenced in a foreign key constraintDETAIL:  Table "trunc_b" references "truncate_a" via foreign key constraint "trunc_b_a_fkey".HINT:  Truncate table "trunc_b" at the same time.TRUNCATE TABLE truncate_a,trunc_b;		-- failERROR:  cannot truncate a table referenced in a foreign key constraintDETAIL:  Table "trunc_e" references "truncate_a" via foreign key constraint "trunc_e_a_fkey".HINT:  Truncate table "trunc_e" at the same time.TRUNCATE TABLE truncate_a,trunc_b,trunc_e;	-- okTRUNCATE TABLE truncate_a,trunc_e;		-- failERROR:  cannot truncate a table referenced in a foreign key constraintDETAIL:  Table "trunc_b" references "truncate_a" via foreign key constraint "trunc_b_a_fkey".HINT:  Truncate table "trunc_b" at the same time.TRUNCATE TABLE trunc_c;		-- failERROR:  cannot truncate a table referenced in a foreign key constraintDETAIL:  Table "trunc_d" references "trunc_c" via foreign key constraint "trunc_d_a_fkey".HINT:  Truncate table "trunc_d" at the same time.TRUNCATE TABLE trunc_c,trunc_d;		-- failERROR:  cannot truncate a table referenced in a foreign key constraintDETAIL:  Table "trunc_e" references "trunc_c" via foreign key constraint "trunc_e_b_fkey".HINT:  Truncate table "trunc_e" at the same time.TRUNCATE TABLE trunc_c,trunc_d,trunc_e;	-- okTRUNCATE TABLE trunc_c,trunc_d,trunc_e,truncate_a;	-- failERROR:  cannot truncate a table referenced in a foreign key constraintDETAIL:  Table "trunc_b" references "truncate_a" via foreign key constraint "trunc_b_a_fkey".HINT:  Truncate table "trunc_b" at the same time.TRUNCATE TABLE trunc_c,trunc_d,trunc_e,truncate_a,trunc_b;	-- ok-- circular referencesALTER TABLE truncate_a ADD FOREIGN KEY (col1) REFERENCES trunc_c;-- Add some data to verify that truncating actually works ...INSERT INTO trunc_c VALUES (1);INSERT INTO truncate_a VALUES (1);INSERT INTO trunc_b VALUES (1);INSERT INTO trunc_d VALUES (1);INSERT INTO trunc_e VALUES (1,1);TRUNCATE TABLE trunc_c;ERROR:  cannot truncate a table referenced in a foreign key constraintDETAIL:  Table "trunc_d" references "trunc_c" via foreign key constraint "trunc_d_a_fkey".HINT:  Truncate table "trunc_d" at the same time.TRUNCATE TABLE trunc_c,trunc_d;ERROR:  cannot truncate a table referenced in a foreign key constraintDETAIL:  Table "trunc_e" references "trunc_c" via foreign key constraint "trunc_e_b_fkey".HINT:  Truncate table "trunc_e" at the same time.TRUNCATE TABLE trunc_c,trunc_d,trunc_e;ERROR:  cannot truncate a table referenced in a foreign key constraintDETAIL:  Table "truncate_a" references "trunc_c" via foreign key constraint "truncate_a_col1_fkey".HINT:  Truncate table "truncate_a" at the same time.TRUNCATE TABLE trunc_c,trunc_d,trunc_e,truncate_a;ERROR:  cannot truncate a table referenced in a foreign key constraintDETAIL:  Table "trunc_b" references "truncate_a" via foreign key constraint "trunc_b_a_fkey".HINT:  Truncate table "trunc_b" at the same time.TRUNCATE TABLE trunc_c,trunc_d,trunc_e,truncate_a,trunc_b;-- Verify that truncating did actually workSELECT * FROM truncate_a   UNION ALL SELECT * FROM trunc_c   UNION ALL SELECT * FROM trunc_b   UNION ALL SELECT * FROM trunc_d; col1 ------(0 rows)SELECT * FROM trunc_e; a | b ---+---(0 rows)DROP TABLE truncate_a,trunc_c,trunc_b,trunc_d,trunc_e CASCADE;NOTICE:  drop cascades to constraint trunc_e_a_fkey on table trunc_eNOTICE:  drop cascades to constraint trunc_b_a_fkey on table trunc_bNOTICE:  drop cascades to constraint trunc_e_b_fkey on table trunc_eNOTICE:  drop cascades to constraint trunc_d_a_fkey on table trunc_d

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -