blob: f44f313b5eb7ffdaecf2430f24b7bf7dd9e56e57 (
plain)
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
|
<!--
doc/src/sgml/ref/load.sgml
-->
<refentry id="SQL-LOAD">
<refmeta>
<refentrytitle>LOAD</refentrytitle>
<manvolnum>7</manvolnum>
<refmiscinfo>SQL - Language Statements</refmiscinfo>
</refmeta>
<refnamediv>
<refname>LOAD</refname>
<refpurpose>load a shared library file</refpurpose>
</refnamediv>
<indexterm zone="sql-load">
<primary>LOAD</primary>
</indexterm>
<refsynopsisdiv>
<synopsis>
LOAD '<replaceable class="PARAMETER">filename</replaceable>'
</synopsis>
</refsynopsisdiv>
<refsect1 id="sql-load-description">
<title>Description</title>
<para>
This command loads a shared library file into the <productname>PostgreSQL</>
server's address space. If the file has been loaded already,
the command does nothing. Shared library files that contain C functions
are automatically loaded whenever one of their functions is called.
Therefore, an explicit <command>LOAD</> is usually only needed to
load a library that modifies the server's behavior through <quote>hooks</>
rather than providing a set of functions.
</para>
<para>
The file name is specified in the same way as for shared library
names in <xref linkend="sql-createfunction">; in particular, one
can rely on a search path and automatic addition of the system's standard
shared library file name extension. See <xref linkend="xfunc-c"> for
more information on this topic.
</para>
<indexterm>
<primary><filename>$libdir/plugins</></primary>
</indexterm>
<para>
Non-superusers can only apply <command>LOAD</> to library files
located in <filename>$libdir/plugins/</> — the specified
<replaceable class="PARAMETER">filename</replaceable> must begin
with exactly that string. (It is the database administrator's
responsibility to ensure that only <quote>safe</> libraries
are installed there.)
</para>
</refsect1>
<refsect1 id="sql-load-compat">
<title>Compatibility</title>
<para>
<command>LOAD</command> is a <productname>PostgreSQL</productname>
extension.
</para>
</refsect1>
<refsect1>
<title>See Also</title>
<para>
<xref linkend="sql-createfunction">
</para>
</refsect1>
</refentry>
|