| PostgreSQL | ||
|---|---|---|
| 上一页 | 下一页 | |
LOAD — 动态装载一个对象文件
LOAD 'filename'
装载一个对象 (或 ".o")文件到 Postgres 后端的地址空间.一旦一个文件被装载,该文件内所有函数都可以被访问.这个功能用于支持用户定义的类型和函数.
如果一个文件没有使用 LOAD 装载,Postgres 将在函数第一次被调用时自动装载该文件.LOAD 还可用于一个重新编辑和编译后的目标文件的重新装载.目前只支持用 C 创建的对象的文件.
被装载的对象文件内的函数不应该调用其他通过 LOAD 命令装载的对象文件内部的函数.例如,所有文件 A 内的函数可以互相调用,可以调用标准库或数学库中的函数或 Postgres 自身内部的函数.它们不能调用定义在另一个装载文件B内的函数.这是因为如果B被重装载,Postgres 装载器将不能够重新定位从A中函数调用的B中函数的地址空间.但是如果B 没有重装载,就不会有问题.
对象文件必须编译成包含位置无关的代码.例如, 在 DECstations 上你必须使用带 -G 0 选项的 /bin/cc 编译将要装载的对象(目标)文件.
注意如果你向新的平台移植 Postgres ,为支持 ADT LOAD 必须(可用).
载入文件 /usr/postgres/demo/circle.o:
LOAD '/usr/postgres/demo/circle.o'
| 上一页 | 首页 | 下一页 |
| LISTEN | 开头 | LOCK |