1、文件導入
pg_dump.exe --host host端口 --port 端口號 --username 連接名 --file 文件路徑 “數據庫名稱”
例如:
pg_dump.exe --host localhost --port 5432 --username postgres --format custom --blobs --verbose --file "C:\Documents and Settings\Administrator\桌面\SPISS_KAIFA.backup" "SPISS"
2、循環語句
CREATE OR REPLACE FUNCTION showName() RETURNS TEXT AS $$
DECLARE abc VARCHAR ; i int; parent INT ; lev INT; j int;
BEGIN
i := 1;
while i<64 loop
j := i;
SELECT tablename,parentid,"level" into abc ,parent,lev from rp_tablelist WHERE tableid=j;
INSERT INTO rp_tablelist VALUES(j+63,abc,parent,lev,2,1);
i := i+1;
end loop;
RETURN i;
END;
$$ LANGUAGE plpgsql;
3、返回一個遊標的存儲過程
CREATE OR REPLACE FUNCTION getEntIndustry(refcursor,VARCHAR) RETURNS refcursor as $$
BEGIN
OPEN $1 FOR SELECT enterpriseid,industries FROM enterprise WHERE industries like $2;
RETURN $1;
END
$$LANGUAGE plpgsql;
第一參數爲遊標的名稱,第二個參數爲搜索的條件
使用方法 select getEntIndustry('abc','建築');
4、遍歷遊標,更改對應的數據庫表項
CREATE OR REPLACE FUNCTION updEntIndustry(refcursor,VARCHAR) RETURNS SETOF TEXT as $$
DECLARE entid int;
inds text;
inds1 text;
BEGIN
FETCH $1 INTO entid,inds;
while FOUND loop
inds1 := inds || $2;
UPDATE enterprise SET industries=inds1 WHERE enterpriseid=entid;
FETCH $1 INTO entid,inds;
END loop;
END
$$LANGUAGE plpgsql;
第一個參數爲需要被調用的遊標的名稱,第二參數爲附帶的特定字符串信息
使用方法select updEntIndustry('abc','領域');
3和4聯合起來使用可以循環更改某一張數據表的特定信息