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

📄 copy2.sql

📁 PostgreSQL 8.1.4的源码 适用于Linux下的开源数据库系统
💻 SQL
字号:
CREATE TABLE x (	a serial,	b int,	c text not null default 'stuff',	d text,	e text) WITH OIDS;CREATE FUNCTION fn_x_before () RETURNS TRIGGER AS '  BEGIN		NEW.e := ''before trigger fired''::text;		return NEW;	END;' language 'plpgsql';CREATE FUNCTION fn_x_after () RETURNS TRIGGER AS '  BEGIN		UPDATE x set e=''after trigger fired'' where c=''stuff'';		return NULL;	END;' language 'plpgsql';CREATE TRIGGER trg_x_after AFTER INSERT ON xFOR EACH ROW EXECUTE PROCEDURE fn_x_after();CREATE TRIGGER trg_x_before BEFORE INSERT ON xFOR EACH ROW EXECUTE PROCEDURE fn_x_before();COPY x (a, b, c, d, e) from stdin;9999	\N	\\N	\NN	\N10000	21	31	41	51\.COPY x (b, d) from stdin;1	test_1\.COPY x (b, d) from stdin;2	test_23	test_34	test_45	test_5\.COPY x (a, b, c, d, e) from stdin;10001	22	32	42	5210002	23	33	43	5310003	24	34	44	5410004	25	35	45	5510005	26	36	46	56\.-- non-existent column in column list: should failCOPY x (xyz) from stdin;-- too many columns in column list: should failCOPY x (a, b, c, d, e, d, c) from stdin;-- missing data: should failCOPY x from stdin;\.COPY x from stdin;2000	230	23	23\.COPY x from stdin;2001	231	\N	\N\.-- extra data: should failCOPY x from stdin;2002	232	40	50	60	70	80\.-- various COPY options: delimiters, oids, NULL stringCOPY x (b, c, d, e) from stdin with oids delimiter ',' null 'x';500000,x,45,80,90500001,x,\x,\\x,\\\x500002,x,\,,\\\,,\\\.COPY x from stdin WITH DELIMITER AS ';' NULL AS '';3000;;c;;\.COPY x from stdin WITH DELIMITER AS ':' NULL AS E'\\X';4000:\X:C:\X:\X4001:1:empty::4002:2:null:\X:\X4003:3:Backslash:\\:\\4004:4:BackslashX:\\X:\\X4005:5:N:\N:\N4006:6:BackslashN:\\N:\\N4007:7:XX:\XX:\XX4008:8:Delimiter:\::\:\.-- check results of copy inSELECT * FROM x;-- COPY w/ oids on a table w/o oids should failCREATE TABLE no_oids (	a	int,	b	int) WITHOUT OIDS;INSERT INTO no_oids (a, b) VALUES (5, 10);INSERT INTO no_oids (a, b) VALUES (20, 30);-- should failCOPY no_oids FROM stdin WITH OIDS;COPY no_oids TO stdout WITH OIDS;-- check copy outCOPY x TO stdout;COPY x (c, e) TO stdout;COPY x (b, e) TO stdout WITH NULL 'I''m null';CREATE TABLE y (	col1 text,	col2 text);INSERT INTO y VALUES ('Jackson, Sam', E'\\h');INSERT INTO y VALUES ('It is "perfect".',E'\t');INSERT INTO y VALUES ('', NULL);COPY y TO stdout WITH CSV;COPY y TO stdout WITH CSV QUOTE '''' DELIMITER '|';COPY y TO stdout WITH CSV FORCE QUOTE col2 ESCAPE E'\\';--test that we read consecutive LFs properlyCREATE TEMP TABLE testnl (a int, b text, c int);COPY testnl FROM stdin CSV;1,"a field with two LFsinside",2\.-- test end of copy markerCREATE TEMP TABLE testeoc (a text);COPY testeoc FROM stdin CSV;a\.\.bc\.d"\."\.COPY testeoc TO stdout CSV;DROP TABLE x, y;DROP FUNCTION fn_x_before();DROP FUNCTION fn_x_after();

⌨️ 快捷键说明

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