Day 2, full DB import/update/delete from dir with XML or HTTP

This commit is contained in:
Jack Stdin
2016-01-13 17:38:01 +03:00
parent 3aeb00d82a
commit 67f6943dce
14 changed files with 146 additions and 67 deletions

View File

@@ -0,0 +1 @@
COPY "%tablename%" (%fieldslist%) FROM '%csvname%' DELIMITER '%tab%' NULL 'NULL'

View File

@@ -0,0 +1,5 @@
DROP TABLE IF EXISTS "%tablename%_TEMP";
CREATE TEMP TABLE "%tablename%_TEMP" ON COMMIT DROP AS SELECT *
FROM "%tablename%" WITH NO DATA;
COPY "%tablename%_TEMP" (%fieldslist%) FROM '%csvname%' DELIMITER '%tab%' NULL 'NULL';
DELETE FROM "%tablename%" WHERE %uniquekey% IN (SELECT %uniquekey% FROM "%tablename%_TEMP");

View File

@@ -0,0 +1,7 @@
DROP TABLE IF EXISTS "%tablename%_TEMP";
CREATE TEMP TABLE "%tablename%_TEMP" ON COMMIT DROP AS SELECT *
FROM "%tablename%" WITH NO DATA;
COPY "%tablename%_TEMP" (%fieldslist%) FROM '%csvname%' DELIMITER '%tab%' NULL 'NULL';
INSERT INTO "%tablename%" (%fieldslist%) SELECT %fieldslist%
FROM
"%tablename%_TEMP" ON CONFLICT (%uniquekey%) DO UPDATE SET %updaterule%;

View File

@@ -7,10 +7,11 @@ CREATE TABLE "public"."ADDROBJ" (
"formalname" VARCHAR(120) COLLATE "default",
"aolevel" INT2,
"parentguid" UUID,
"actstatus" BIT(1),
"currstatus" INT2,
"actstatus" BOOL,
"livestatus" BOOL,
"nextid" UUID,
CONSTRAINT "aoid" UNIQUE ("aoid"),
CONSTRAINT "id" PRIMARY KEY ("id")
CONSTRAINT "id_addrobj" PRIMARY KEY ("id")
)
WITH (OIDS =FALSE
);
@@ -21,7 +22,8 @@ CREATE TABLE "public"."SOCRBASE" (
"scname" VARCHAR(10),
"socrname" VARCHAR(50),
"kod_t_st" VARCHAR(4),
PRIMARY KEY ("id")
CONSTRAINT "kod_t_st" UNIQUE ("kod_t_st"),
CONSTRAINT "id_socrbase" PRIMARY KEY ("id")
)
WITH (OIDS =FALSE
);