?
本文檔使用 php中文網(wǎng)手冊 發(fā)布
還有一些對應(yīng)上面那些客戶端函數(shù)的服務(wù)器端函數(shù),
可以在SQL命令里使用;實(shí)際上,大多數(shù)客戶端函數(shù)都只是服務(wù)
器端函數(shù)的等效接口。這些服務(wù)器端函數(shù)中,
通過SQL命令調(diào)用的實(shí)際有用的是
lo_creat
,
lo_create
,
lo_unlink
,
lo_import
和
lo_export
。
下面是一些例子:
CREATE TABLE image ( name text, raster oid ); SELECT lo_creat(-1); -- 返回新創(chuàng)建的空的大對象的 OID SELECT lo_create(43213); -- 企圖創(chuàng)建 OID 為 43213 的大對象 SELECT lo_unlink(173454); -- 刪除 OID 為 173454 的大對象 INSERT INTO image (name, raster) VALUES ('beautiful image', lo_import('/etc/motd')); INSERT INTO image (name, raster) -- same as above, but specify OID to use VALUES ('beautiful image', lo_import('/etc/motd', 68583)); SELECT lo_export(image.raster, '/tmp/motd') FROM image WHERE name = 'beautiful image';
服務(wù)器端的lo_import
和
lo_export
函數(shù)和客戶端的那幾個有著顯著的不同。
這兩個函數(shù)在服務(wù)器的文件系統(tǒng)里讀寫文件,
使用數(shù)據(jù)庫所有者的權(quán)限進(jìn)行。因此,只有超級用戶才能使用他們。
相比之下,客戶端的輸入和輸出函數(shù)在客戶的文件系統(tǒng)里讀寫文件,
使用客戶端程序的權(quán)限??蛻舳撕瘮?shù)不需要超級用戶權(quán)限。