DROP TABLE IF EXISTS zipcode;
CREATE TABLE IF NOT EXISTS zipcode (
- id varchar(20),
country varchar(2),
+ code varchar(20),
name varchar(180),
state varchar(100),
state_code varchar(20),
latitude numeric(7,4),
longitude numeric(7,4),
accuracy smallint
- -- PRIMARY KEY(id,country)
);
-GRANT ALL ON ALL TABLES IN SCHEMA public TO www;
-GRANT ALL ON ALL TABLES IN SCHEMA public TO nico;
-GRANT ALL ON ALL TABLES IN SCHEMA public TO root;
-CREATE INDEX IF NOT EXISTS zipcode_id_idx ON zipcode (id);
-CREATE INDEX IF NOT EXISTS zipcode_country_countryx ON zipcode (country);
-CREATE INDEX IF NOT EXISTS zipcode_name_namex ON zipcode (name);
--- \copy zipcode from stdin with delimiter E'\t' null as '';
+
+CREATE INDEX IF NOT EXISTS zipcode_code_idx ON zipcode (code);
+CREATE INDEX IF NOT EXISTS zipcode_country_idx ON zipcode (country);
+CREATE INDEX IF NOT EXISTS zipcode_name_idx ON zipcode (name);
+
+GRANT ALL ON TABLE zipcode TO www;
+GRANT ALL ON TABLE zipcode TO nico;
+GRANT ALL ON TABLE zipcode TO root;
+
BEGIN TRANSACTION;
DELETE FROM zipcode;
-COPY zipcode FROM stdin WITH (format 'text');
+-- COPY zipcode FROM stdin WITH (format 'text');
+COPY zipcode FROM PROGRAM 'curl -s http://download.geonames.org/export/zip/allCountries.zip | zcat | sed "s,\\\\,\\\\\\\\,g"' WITH (format 'text', NULL '');
+-- COPY geo FROM PROGRAM '/opt/nb/lib/postgres/zipcode' WITH (format 'text', NULL '');
COMMIT;