File: import.source

package info (click to toggle)
pgsql-ogr-fdw 1.1.7-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 696 kB
  • sloc: ansic: 4,114; makefile: 62; sql: 36; sh: 15
file content (104 lines) | stat: -rw-r--r-- 3,546 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
set client_min_messages=NOTICE;
------------------------------------------------
CREATE SCHEMA imp1;
IMPORT FOREIGN SCHEMA ogr_all 
  LIMIT TO (n2launder) 
  FROM SERVER myserver 
  INTO imp1;
NOTICE:  Number of tables to be created 1
SELECT  c.column_name, c.data_type, attfdwoptions 
FROM information_schema._pg_foreign_table_columns  AS fc  
    INNER JOIN information_schema.columns AS c ON 
        fc.nspname = c.table_schema AND fc.relname = c.table_name 
        AND fc.attname = c.column_name
WHERE fc.nspname = 'imp1' and fc.relname = 'n2launder'
ORDER BY c.ordinal_position;
 column_name |     data_type     |      attfdwoptions      
-------------+-------------------+-------------------------
 fid         | bigint            | 
 geom        | bytea             | 
 n2ame       | character varying | {column_name=2ame}
 age         | integer           | 
 height      | double precision  | 
 b_rthdate   | date              | {column_name=b-rthdate}
(6 rows)

SELECT * FROM imp1.n2launder WHERE fid = 0;
 fid |                     geom                     | n2ame | age | height | b_rthdate  
-----+----------------------------------------------+-------+-----+--------+------------
   0 | \x0101000000c00497d1162cb93f8cbaef08a080e63f | Peter |  45 |    5.6 | 04-12-1965
(1 row)

------------------------------------------------
CREATE SCHEMA imp2;
IMPORT FOREIGN SCHEMA ogr_all 
  LIMIT TO ("natural") 
  FROM SERVER myserver 
  INTO imp2;
NOTICE:  Number of tables to be created 1
SELECT  c.column_name, c.data_type, attfdwoptions 
FROM information_schema._pg_foreign_table_columns  AS fc  
    INNER JOIN information_schema.columns AS c ON 
        fc.nspname = c.table_schema AND fc.relname = c.table_name 
        AND fc.attname = c.column_name
WHERE fc.nspname = 'imp2' and fc.relname = 'natural'
ORDER BY c.ordinal_position;
 column_name |     data_type     | attfdwoptions 
-------------+-------------------+---------------
 fid         | bigint            | 
 id          | double precision  | 
 natural     | character varying | 
(3 rows)

SELECT "natural" FROM imp2."natural";
 natural 
---------
 wood
 land
(2 rows)

------------------------------------------------
CREATE SERVER svr_test_apost
  FOREIGN DATA WRAPPER ogr_fdw
  OPTIONS (
    datasource '@abs_srcdir@/data/no_geom_apost.csv',
    format 'CSV' );
CREATE SCHEMA imp3;
IMPORT FOREIGN SCHEMA ogr_all 
  LIMIT TO (no_geom_apost) 
  FROM SERVER svr_test_apost
  INTO imp3;
NOTICE:  Number of tables to be created 1
SELECT  c.column_name, c.data_type, attfdwoptions 
FROM information_schema._pg_foreign_table_columns  AS fc  
    INNER JOIN information_schema.columns AS c ON 
        fc.nspname = c.table_schema AND fc.relname = c.table_name 
        AND fc.attname = c.column_name
WHERE fc.nspname = 'imp3' and fc.relname = 'no_geom_apost'
ORDER BY c.ordinal_position;
  column_name   |     data_type     |         attfdwoptions          
----------------+-------------------+--------------------------------
 fid            | bigint            | 
 name           | character varying | 
 age            | character varying | 
 person_s_value | character varying | {"column_name=person's value"}
(4 rows)

SELECT name,age FROM imp3.no_geom_apost WHERE name = 'Paul';
 name | age 
------+-----
 Paul | 45
(1 row)

SELECT name,age FROM imp3.no_geom_apost WHERE name IS NULL;
 name | age 
------+-----
(0 rows)

SELECT name,age FROM imp3.no_geom_apost WHERE name = '';
 name | age 
------+-----
      | 44
(1 row)

------------------------------------------------