Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit9ab7ab5

Browse files
author
Hiroshi Inoue
committed
Add casts between lo and oid.
1 parent699782b commit9ab7ab5

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

‎contrib/lo/lo.sql.in

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
--
22
--PostgreSQL code for LargeObjects
33
--
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 $
55
--
66
--
77
--Create the data type
@@ -17,13 +17,13 @@ SET autocommit TO 'on';
1717
CREATE FUNCTION lo_in(cstring)
1818
RETURNS lo
1919
AS 'MODULE_PATHNAME'
20-
LANGUAGE 'C';
20+
LANGUAGE 'C' IMMUTABLE;
2121

2222
-- used by the lo type, it returns the oid of the object
2323
CREATE FUNCTION lo_out(lo)
2424
RETURNS cstring
2525
AS 'MODULE_PATHNAME'
26-
LANGUAGE 'C';
26+
LANGUAGE 'C' IMMUTABLE;
2727

2828
-- finally the type itself
2929
CREATE TYPE lo (
@@ -37,7 +37,7 @@ CREATE TYPE lo (
3737
CREATE FUNCTION lo_oid(lo)
3838
RETURNS oid
3939
AS 'MODULE_PATHNAME'
40-
LANGUAGE 'C';
40+
LANGUAGE 'C' IMMUTABLE;
4141

4242
-- same function, named to allow it to be used as a type coercion, eg:
4343
-- CREATE TABLE a (image lo);
@@ -46,14 +46,16 @@ LANGUAGE 'C';
4646
CREATE FUNCTION oid(lo)
4747
RETURNS oid
4848
AS 'MODULE_PATHNAME', 'lo_oid'
49-
LANGUAGE 'C';
49+
LANGUAGE 'C' IMMUTABLE;
50+
CREATE CAST (lo as oid) WITH FUNCTION oid(lo) AS IMPLICIT;
5051

5152
-- this allows us to convert an oid to a managed lo object
5253
-- ie: insert into test values (lo_import('/fullpath/file')::lo);
5354
CREATE FUNCTION lo(oid)
5455
RETURNS lo
5556
AS 'MODULE_PATHNAME'
56-
LANGUAGE 'C';
57+
LANGUAGE 'C' IMMUTABLE;
58+
CREATE CAST (oid as lo) WITH FUNCTION lo(oid) AS IMPLICIT;
5759

5860
-- This is used in triggers
5961
CREATE FUNCTION lo_manage()

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp