File tree Expand file tree Collapse file tree 1 file changed +8
-6
lines changed Expand file tree Collapse file tree 1 file changed +8
-6
lines changed Original file line number Diff line number Diff line change 1
1
--
2
2
-- PostgreSQL code for LargeObjects
3
3
--
4
- -- $Id: lo.sql.in,v 1.8 2002/10/18 18:41:20 momjian Exp $
4
+ -- $Id: lo.sql.in,v 1.9 2002/12/31 10:22:03 inoue Exp $
5
5
--
6
6
--
7
7
-- Create the data type
@@ -17,13 +17,13 @@ SET autocommit TO 'on';
17
17
CREATE FUNCTION lo_in(cstring)
18
18
RETURNS lo
19
19
AS 'MODULE_PATHNAME'
20
- LANGUAGE 'C';
20
+ LANGUAGE 'C' IMMUTABLE ;
21
21
22
22
-- used by the lo type, it returns the oid of the object
23
23
CREATE FUNCTION lo_out(lo)
24
24
RETURNS cstring
25
25
AS 'MODULE_PATHNAME'
26
- LANGUAGE 'C';
26
+ LANGUAGE 'C' IMMUTABLE ;
27
27
28
28
-- finally the type itself
29
29
CREATE TYPE lo (
@@ -37,7 +37,7 @@ CREATE TYPE lo (
37
37
CREATE FUNCTION lo_oid(lo)
38
38
RETURNS oid
39
39
AS 'MODULE_PATHNAME'
40
- LANGUAGE 'C';
40
+ LANGUAGE 'C' IMMUTABLE ;
41
41
42
42
-- same function, named to allow it to be used as a type coercion, eg:
43
43
-- CREATE TABLE a (image lo);
@@ -46,14 +46,16 @@ LANGUAGE 'C';
46
46
CREATE FUNCTION oid(lo)
47
47
RETURNS oid
48
48
AS 'MODULE_PATHNAME', 'lo_oid'
49
- LANGUAGE 'C';
49
+ LANGUAGE 'C' IMMUTABLE;
50
+ CREATE CAST (lo as oid) WITH FUNCTION oid(lo) AS IMPLICIT;
50
51
51
52
-- this allows us to convert an oid to a managed lo object
52
53
-- ie: insert into test values (lo_import('/fullpath/file')::lo);
53
54
CREATE FUNCTION lo(oid)
54
55
RETURNS lo
55
56
AS 'MODULE_PATHNAME'
56
- LANGUAGE 'C';
57
+ LANGUAGE 'C' IMMUTABLE;
58
+ CREATE CAST (oid as lo) WITH FUNCTION lo(oid) AS IMPLICIT;
57
59
58
60
-- This is used in triggers
59
61
CREATE FUNCTION lo_manage()
You can’t perform that action at this time.
0 commit comments