Changeset 250
- Timestamp:
- 02/01/13 16:58:00 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/import/nutzungsart_definition_ORACLE.sql
r249 r250 2 2 --- 3 3 --- 4 5 SET client_encoding = 'UTF-8'; 4 define alkis_epsg=&1 6 5 7 6 DELETE FROM user_sdo_geom_metadata WHERE upper(table_name)='NUTZUNG_META'; … … 9 8 / 10 9 CREATE TABLE NUTZUNG_META ( 11 nutz_idinteger NOT NULL,12 gruppe character varying(30),13 source_table character varying(50),14 title character varying(50),15 fldclass character varying(30),16 fldinfo character varying(30),17 CONSTRAINT ALKIS_KEY _0 PRIMARY KEY (nutz_id)10 NUTZ_ID integer NOT NULL, 11 GRUPPE varchar2(30), 12 SOURCE_TABLE varchar2(50), 13 TITLE varchar2(50), 14 FLDCLASS varchar2(30), 15 FLDINFO varchar2(30), 16 CONSTRAINT ALKIS_KEYN_0 PRIMARY KEY (NUTZ_ID) 18 17 ); 19 COMMENT ON TABLE nutzung_meta IS 'Gruppierung und Indizierung der zusammen gefassten Nutzungsarten in der Tabelle "nutzung".';20 COMMENT ON COLUMN nutzung_meta.nutz_id IS 'Index fuer die Quell-Tabelle bei der Zusammenfassung in der Tabelle "nutzung".';21 COMMENT ON COLUMN nutzung_meta.source_tableIS 'Name der importierten Tabelle aus PostNAS.';22 COMMENT ON COLUMN nutzung_meta.gruppe IS 'Objektartengruppe, Gruppierung der Nutzungsart.';23 COMMENT ON COLUMN nutzung_meta.title IS 'Vorzeigbare Bezeichnung der Nutzungsartentabelle.';24 COMMENT ON COLUMN nutzung_meta.fldclass IS 'Name des Feldes aus "source_table", das in Feld "nutzung.class" kopiert wird.';25 COMMENT ON COLUMN nutzung_meta.fldinfo IS 'Name des Feldes aus "source_table", das in Feld "nutzung.info" kopiert wird.';18 COMMENT ON TABLE NUTZUNG_META IS 'Gruppierung und Indizierung der zusammen gefassten NUTZUNGsarten in der Tabelle "NUTZUNG".'; 19 COMMENT ON COLUMN NUTZUNG_META.NUTZ_ID IS 'Index fuer die Quell-Tabelle bei der Zusammenfassung in der Tabelle "NUTZUNG".'; 20 COMMENT ON COLUMN NUTZUNG_META.SOURCE_TABLE IS 'Name der importierten Tabelle aus PostNAS.'; 21 COMMENT ON COLUMN NUTZUNG_META.GRUPPE IS 'Objektartengruppe, Gruppierung der NUTZUNGsart.'; 22 COMMENT ON COLUMN NUTZUNG_META.TITLE IS 'Vorzeigbare Bezeichnung der NUTZUNGsartentabelle.'; 23 COMMENT ON COLUMN NUTZUNG_META.FLDCLASS IS 'Name des Feldes aus "source_table", das in Feld "NUTZUNG.CLASS" kopiert wird.'; 24 COMMENT ON COLUMN NUTZUNG_META.FLDINFO IS 'Name des Feldes aus "source_table", das in Feld "NUTZUNG.info" kopiert wird.'; 26 25 27 DELETE FROM user_sdo_geom_ metadata WHERE upper(table_name)='NUTZUNG';26 DELETE FROM user_sdo_geom_METAdata WHERE upper(table_name)='NUTZUNG'; 28 27 BEGIN EXECUTE IMMEDIATE 'DROP TABLE NUTZUNG CASCADE CONSTRAINTS'; EXCEPTION WHEN OTHERS THEN NULL; END; 29 28 / 30 29 CREATE TABLE NUTZUNG ( 31 gml_id character(16), 32 beginnt character(20), 33 nutz_id integer, 34 class integer, 35 info integer, 36 zustand integer, 37 "name" varchar2(2047), 38 bezeichnung varchar2(2047), 39 CONSTRAINT nutzung_pk PRIMARY KEY (gml_id, beginnt), 40 CONSTRAINT nutzung_meta_id FOREIGN KEY (nutz_id) 41 REFERENCES nutzung_meta (nutz_id) MATCH SIMPLE 42 ON UPDATE NO ACTION ON DELETE CASCADE 43 ) 44 WITH (OIDS=FALSE); 45 SELECT AddGeometryColumn('nutzung','ora_geometry','25832','POLYGON',2); 46 CREATE INDEX ALKIS_KEY_1 ON nutzung (nutz_id, class); 47 CREATE INDEX ALKIS_KEY_2 ON NUTZUNG(ORA_GEOMETRY) INDEXTYPE IS MDSYS.SPATIAL_INDEX PARALLEL; 48 COMMENT ON TABLE nutzung IS 'Zusammenfassung von 26 Tabellen des Objektbereiches "TatsÀchliche Nutzung".'; 49 COMMENT ON COLUMN nutzung.gml_id IS 'Identifikator, global eindeutig'; 50 COMMENT ON COLUMN nutzung.nutz_id IS 'Index fuer die Quell-Tabelle bei der Zusammenfassung in der Tabelle "nutzung".'; 51 COMMENT ON COLUMN nutzung.class IS 'Klassifizierung innerhalb der Nutzung. Aus verschiedenen Feldern importiert. Siehe "nutzung_meta.fldclass".'; 52 COMMENT ON COLUMN nutzung.info IS 'Weitere verschlÃŒsselte Information zur Nutzung. Aus verschiedenen Feldern importiert. Siehe "nutzung_meta.fldinfo".'; 53 COMMENT ON COLUMN nutzung.name IS 'NAM Eigenname'; 54 COMMENT ON COLUMN nutzung.bezeichnung IS 'weitere unverschlÃŒsselte Information wie Zweitname, Bezeichnung, fachliche Nummerierung usw.'; 55 COMMENT ON COLUMN nutzung.zustand IS 'ZUS "Zustand" beschreibt, ob der Abschnitt ungenutzt ist.'; 30 GML_ID character(16), 31 BEGINNT character(20), 32 NUTZ_ID integer, 33 CLASS integer, 34 INFO integer, 35 ZUSTAND integer, 36 NAME varchar2(2047), 37 BEZEICHNUNG varchar2(2047), 38 CONSTRAINT NUTZUNG_pk PRIMARY KEY (GML_ID, BEGINNT)--, 39 --CONSTRAINT NUTZUNG_META_id FOREIGN KEY (NUTZ_ID) -- fuer ORACLE noch anpassen 40 -- REFERENCES NUTZUNG_META (NUTZ_ID) MATCH SIMPLE 41 -- ON UPDATE NO ACTION ON DELETE CASCADE 42 ); 43 44 --SELECT AddGeometryColumn('NUTZUNG','ora_geometry','25832','POLYGON',2); 45 INSERT INTO user_sdo_geom_metadata(table_name,column_name,srid,diminfo) VALUES ('NUTZUNG','ORA_GEOMETRY',&&alkis_epsg,mdsys.sdo_dim_array(mdsys.sdo_dim_element('X',200000,800000,0.001),mdsys.sdo_dim_element('Y',5200000,6100000,0.001))); 46 47 CREATE INDEX ALKIS_KEYN_1 ON NUTZUNG (NUTZ_ID, CLASS); 48 CREATE INDEX ALKIS_KEYN_2 ON NUTZUNG(ORA_GEOMETRY) INDEXTYPE IS MDSYS.SPATIAL_INDEX PARALLEL; 49 COMMENT ON TABLE NUTZUNG IS 'Zusammenfassung von 26 Tabellen des Objektbereiches "TatsÀchliche NUTZUNG".'; 50 COMMENT ON COLUMN NUTZUNG.GML_ID IS 'Identifikator, global eindeutig'; 51 COMMENT ON COLUMN NUTZUNG.NUTZ_ID IS 'Index fuer die Quell-Tabelle bei der Zusammenfassung in der Tabelle "NUTZUNG".'; 52 COMMENT ON COLUMN NUTZUNG.CLASS IS 'Klassifizierung innerhalb der NUTZUNG. Aus verschiedenen Feldern importiert. Siehe "NUTZUNG_META.fldCLASS".'; 53 COMMENT ON COLUMN NUTZUNG.INFO IS 'Weitere verschlÃŒsselte Information zur NUTZUNG. Aus verschiedenen Feldern importiert. Siehe "NUTZUNG_META.fldinfo".'; 54 COMMENT ON COLUMN NUTZUNG.NAME IS 'NAM Eigenname'; 55 COMMENT ON COLUMN NUTZUNG.BEZEICHNUNG IS 'weitere unverschlÃŒsselte Information wie Zweitname, Bezeichnung, fachliche Nummerierung usw.'; 56 COMMENT ON COLUMN NUTZUNG.ZUSTAND IS 'ZUS "Zustand" beschreibt, ob der Abschnitt ungenutzt ist.'; 56 57 57 58 DELETE FROM user_sdo_geom_metadata WHERE upper(table_name)='NUTZUNG_CLASS'; … … 59 60 / 60 61 CREATE TABLE NUTZUNG_CLASS ( 61 nutz_idinteger NOT NULL,62 classinteger NOT NULL,63 label character varying(100),64 blabla character varying(1000),65 CONSTRAINT ALKIS_KEY _3 PRIMARY KEY (nutz_id, class),66 CONSTRAINT ALKIS_KEY_4 FOREIGN KEY (nutz_id)67 REFERENCES nutzung_meta(nutz_id) MATCH SIMPLE68 ON UPDATE NO ACTION ON DELETE CASCADE62 NUTZ_ID integer NOT NULL, 63 CLASS integer NOT NULL, 64 LABEL varchar2(100), 65 BLABLA varchar2(1000), 66 CONSTRAINT ALKIS_KEYN_3 PRIMARY KEY (NUTZ_ID, CLASS)--, 67 --CONSTRAINT ALKIS_KEYN_4 FOREIGN KEY (NUTZ_ID) -- fuer ORACLE noch anpassen 68 -- REFERENCES NUTZUNG_META (nutz_id) MATCH SIMPLE 69 -- ON UPDATE NO ACTION ON DELETE CASCADE 69 70 ); 70 COMMENT ON TABLE nutzung_class IS 'SchlÃŒsseltabelle. Feinere Klassifizierung der zusammen gefassten Nutzungsarten.'; 71 COMMENT ON COLUMN nutzung_class.nutz_id IS 'Index fuer die Quell-Tabelle bei der Zusammenfassung in der Tabelle nutzung.'; 72 COMMENT ON COLUMN nutzung_class.class IS 'Key, SchlÃŒsselwert.'; 73 COMMENT ON COLUMN nutzung_class.label IS 'EntschlÃŒsselung. Art der Nutzung, Dies Feld soll in der Auskunft angezeigt werden.'; 74 COMMENT ON COLUMN nutzung_class.blabla IS 'Weitere ErlÀuterungen und Definitionen dazu.'; 75 CREATE OR REPLACE VIEW nutzung_mehrfache_gml AS 76 SELECT a.gml_id, 77 a.nutz_id, 78 a.beginnt as beginnt1, 79 b.beginnt as beginnt2 80 FROM nutzung a 81 JOIN nutzung b 82 ON a.gml_id = b.gml_id 83 WHERE a.beginnt < b.beginnt 71 COMMENT ON TABLE NUTZUNG_CLASS IS 'SchlÃŒsseltabelle. Feinere Klassifizierung der zusammen gefassten NUTZUNGsarten.'; 72 COMMENT ON COLUMN NUTZUNG_CLASS.NUTZ_ID IS 'Index fuer die Quell-Tabelle bei der Zusammenfassung in der Tabelle NUTZUNG.'; 73 COMMENT ON COLUMN NUTZUNG_CLASS.CLASS IS 'Key, SchlÃŒsselwert.'; 74 COMMENT ON COLUMN NUTZUNG_CLASS.LABEL IS 'EntschlÃŒsselung. Art der NUTZUNG, Dies Feld soll in der Auskunft angezeigt werden.'; 75 COMMENT ON COLUMN NUTZUNG_CLASS.BLABLA IS 'Weitere ErlÀuterungen und Definitionen dazu.'; 76 77 78 CREATE OR REPLACE VIEW NUTZUNG_MEHRFACHE_GML AS 79 SELECT a.GML_ID, 80 a.NUTZ_ID, 81 a.BEGINNT as BEGINNT1, 82 b.BEGINNT as BEGINNT2 83 FROM NUTZUNG a 84 JOIN NUTZUNG b 85 ON a.GML_ID = b.GML_ID 86 WHERE a.BEGINNT < b.BEGINNT 84 87 ; 85 88 purge recyclebin;
Note: See TracChangeset
for help on using the changeset viewer.