Project

General

Profile

1 2094 aaronmk
--
2
-- PostgreSQL database dump
3
--
4
5
SET statement_timeout = 0;
6
SET client_encoding = 'UTF8';
7
SET standard_conforming_strings = off;
8
SET check_function_bodies = false;
9
SET client_min_messages = warning;
10
SET escape_string_warning = off;
11
12
--
13
-- Name: functions; Type: SCHEMA; Schema: -; Owner: -
14
--
15
16
CREATE SCHEMA functions;
17
18
19 2107 aaronmk
SET search_path = functions, pg_catalog;
20
21 2094 aaronmk
--
22 2138 aaronmk
-- Name: _toBool(); Type: FUNCTION; Schema: functions; Owner: -
23
--
24
25
CREATE FUNCTION "_toBool"() RETURNS trigger
26
    LANGUAGE plpgsql IMMUTABLE
27
    AS $$
28
BEGIN
29 2412 aaronmk
    BEGIN
30
        new.result := CAST(new.value AS boolean);
31
    EXCEPTION
32
        WHEN data_exception THEN
33
            new.result := NULL;
34
            RAISE WARNING '%', SQLERRM;
35
    END;
36 2138 aaronmk
    RETURN new;
37
END;
38
$$;
39
40
41
--
42 2107 aaronmk
-- Name: _toDouble(); Type: FUNCTION; Schema: functions; Owner: -
43
--
44
45
CREATE FUNCTION "_toDouble"() RETURNS trigger
46 2135 aaronmk
    LANGUAGE plpgsql IMMUTABLE
47 2107 aaronmk
    AS $$
48
BEGIN
49 2412 aaronmk
    BEGIN
50
        new.result := CAST(new.value AS double precision);
51
    EXCEPTION
52
        WHEN data_exception THEN
53
            new.result := NULL;
54
            RAISE WARNING '%', SQLERRM;
55
    END;
56 2107 aaronmk
    RETURN new;
57
END;
58
$$;
59
60
61 2249 aaronmk
--
62
-- Name: _toTimestamp(); Type: FUNCTION; Schema: functions; Owner: -
63
--
64
65
CREATE FUNCTION "_toTimestamp"() RETURNS trigger
66
    LANGUAGE plpgsql IMMUTABLE
67
    AS $$
68
BEGIN
69 2412 aaronmk
    BEGIN
70
        new.result := CAST(new.value AS timestamp with time zone);
71
    EXCEPTION
72
        WHEN data_exception THEN
73
            new.result := NULL;
74
            RAISE WARNING '%', SQLERRM;
75
    END;
76 2249 aaronmk
    RETURN new;
77
END;
78
$$;
79
80
81 2528 aaronmk
--
82
-- Name: boolean(text); Type: FUNCTION; Schema: functions; Owner: -
83
--
84
85
CREATE FUNCTION "boolean"(value text) RETURNS boolean
86
    LANGUAGE plpgsql IMMUTABLE
87
    AS $$
88
BEGIN
89
    BEGIN
90
        RETURN value;
91
    EXCEPTION
92
        WHEN data_exception THEN
93
            RAISE WARNING '%', SQLERRM;
94
            RETURN NULL;
95
    END;
96
    RETURN new;
97
END;
98
$$;
99
100
101
--
102
-- Name: double precision(text); Type: FUNCTION; Schema: functions; Owner: -
103
--
104
105
CREATE FUNCTION "double precision"(value text) RETURNS double precision
106
    LANGUAGE plpgsql IMMUTABLE
107
    AS $$
108
BEGIN
109
    BEGIN
110
        RETURN value;
111
    EXCEPTION
112
        WHEN data_exception THEN
113
            RAISE WARNING '%', SQLERRM;
114
            RETURN NULL;
115
    END;
116
    RETURN new;
117
END;
118
$$;
119
120
121
--
122
-- Name: timestamp with time zone(text); Type: FUNCTION; Schema: functions; Owner: -
123
--
124
125
CREATE FUNCTION "timestamp with time zone"(value text) RETURNS timestamp with time zone
126
    LANGUAGE plpgsql IMMUTABLE
127
    AS $$
128
BEGIN
129
    BEGIN
130
        RETURN value;
131
    EXCEPTION
132
        WHEN data_exception THEN
133
            RAISE WARNING '%', SQLERRM;
134
            RETURN NULL;
135
    END;
136
    RETURN new;
137
END;
138
$$;
139
140
141 2107 aaronmk
SET default_tablespace = '';
142
143
SET default_with_oids = false;
144
145
--
146 2138 aaronmk
-- Name: _toBool; Type: TABLE; Schema: functions; Owner: -; Tablespace:
147 2107 aaronmk
--
148
149 2138 aaronmk
CREATE TABLE "_toBool" (
150
    result boolean,
151 2338 aaronmk
    not_null boolean DEFAULT true NOT NULL,
152 2107 aaronmk
    value text
153
);
154
155
156
--
157 2138 aaronmk
-- Name: _toDouble; Type: TABLE; Schema: functions; Owner: -; Tablespace:
158 2107 aaronmk
--
159
160 2138 aaronmk
CREATE TABLE "_toDouble" (
161
    result double precision,
162 2338 aaronmk
    not_null boolean DEFAULT true NOT NULL,
163 2138 aaronmk
    value text
164
);
165 2107 aaronmk
166
167
--
168 2249 aaronmk
-- Name: _toTimestamp; Type: TABLE; Schema: functions; Owner: -; Tablespace:
169
--
170
171
CREATE TABLE "_toTimestamp" (
172
    result timestamp with time zone,
173 2338 aaronmk
    not_null boolean DEFAULT true NOT NULL,
174 2249 aaronmk
    value text
175
);
176
177
178
--
179 2138 aaronmk
-- Name: _toBool_unique; Type: INDEX; Schema: functions; Owner: -; Tablespace:
180 2107 aaronmk
--
181
182 2138 aaronmk
CREATE UNIQUE INDEX "_toBool_unique" ON "_toBool" USING btree ((COALESCE(value, '\\N'::text)));
183 2107 aaronmk
184
185
--
186 2138 aaronmk
-- Name: _toDouble_unique; Type: INDEX; Schema: functions; Owner: -; Tablespace:
187 2094 aaronmk
--
188
189 2138 aaronmk
CREATE UNIQUE INDEX "_toDouble_unique" ON "_toDouble" USING btree ((COALESCE(value, '\\N'::text)));
190 2136 aaronmk
191
192
--
193 2249 aaronmk
-- Name: _toTimestamp_unique; Type: INDEX; Schema: functions; Owner: -; Tablespace:
194
--
195
196
CREATE UNIQUE INDEX "_toTimestamp_unique" ON "_toTimestamp" USING btree ((COALESCE(value, '\\N'::text)));
197
198
199
--
200 2138 aaronmk
-- Name: _toBool; Type: TRIGGER; Schema: functions; Owner: -
201 2136 aaronmk
--
202
203 2138 aaronmk
CREATE TRIGGER "_toBool" BEFORE INSERT OR UPDATE ON "_toBool" FOR EACH ROW EXECUTE PROCEDURE "_toBool"();
204 2136 aaronmk
205
206
--
207 2138 aaronmk
-- Name: _toDouble; Type: TRIGGER; Schema: functions; Owner: -
208 2136 aaronmk
--
209
210 2138 aaronmk
CREATE TRIGGER "_toDouble" BEFORE INSERT OR UPDATE ON "_toDouble" FOR EACH ROW EXECUTE PROCEDURE "_toDouble"();
211 2136 aaronmk
212
213
--
214 2249 aaronmk
-- Name: _toTimestamp; Type: TRIGGER; Schema: functions; Owner: -
215
--
216
217
CREATE TRIGGER "_toTimestamp" BEFORE INSERT OR UPDATE ON "_toTimestamp" FOR EACH ROW EXECUTE PROCEDURE "_toTimestamp"();
218
219
220
--
221 2136 aaronmk
-- PostgreSQL database dump complete
222
--