濮阳杆衣贸易有限公司

主頁 > 知識庫 > PostgreSQL中調(diào)用存儲過程并返回數(shù)據(jù)集實例

PostgreSQL中調(diào)用存儲過程并返回數(shù)據(jù)集實例

熱門標(biāo)簽:crm外呼系統(tǒng)聯(lián)系方式 河南電話外呼系統(tǒng)招商 呼和浩特外呼系統(tǒng)原理是什么 長沙電銷外呼防封卡是什么 外呼線路資源屬于電信業(yè)務(wù)嗎 內(nèi)蒙古營銷智能外呼系統(tǒng)哪個好 智能外呼系統(tǒng)官網(wǎng) 青白江400企業(yè)電話申請 小裙科技電銷機器人怎樣

這里用一個實例來演示PostgreSQL存儲過程如何返回數(shù)據(jù)集。

1、首先準(zhǔn)備數(shù)據(jù)表

復(fù)制代碼 代碼如下:

//member_category
create table member_category(id serial, name text, discount_rate real, base_integral integer);
alter table member_category add primary key(id);
alter table member_category add check(name>'');

//member
create table member(id serial, member_num text, name text, category_id integer, account numeric(16,2), integral integer, phone text, birthday date, qq integer, email text, status integer, address text, tip text, start_date date, valid_date integer, password text, creator integer, store_name text);
alter table member add primary key(id);
alter table member add foreign key(creator) references employee;
alter table member add foreign key(category_id) references member_category;
alter table member add  onaccount int;

alter table member add nbsp;onaccount int;
alter table member add nbsp;store_name text;


2、插入測試數(shù)據(jù)
復(fù)制代碼 代碼如下:

insert into member_category(name, discount_rate, base_integral) values('白金會員', 6.5, 10000);
insert into member_category(name, discount_rate, base_integral) values('高級會員', 7.5, 1000);
insert into member_category(name, discount_rate, base_integral) values('中級會員', 8.5, 100);
insert into member_category(name, discount_rate, base_integral) values('普通會員', 9.5, 10);

insert into member(member_num, name, category_id, account, integral, phone, birthday, qq, email, onaccount, status, address, tip, start_date, valid_date, password, store_name) values('1000001', 'wuyilun', 1, 100000.00, 100000, 18814117777, '1990-12-12', 12345678, '123456@qq.com', 0, 1, 'B3-440', '超白金會員,一切免單', '2014-01-15', 1000000, 12345, '華南理工門店');
insert into member(member_num, name, category_id, account, integral, phone, birthday, qq, email, onaccount, status, address, tip, start_date, valid_date, password, store_name) values('1000002', '李小路', 2, 1000.00, 100000, 188141177234, '1990-12-12', 12345678, '123456@qq.com', 0, 1, 'B3-444', '...', '2014-01-15', 1000000, 12345, '華南理工門店');
insert into member(member_num, name, category_id, account, integral, phone, birthday, qq, email, onaccount, status, address, tip, start_date, valid_date, password, store_name) values('1000003', '洪金包', 3, 1000.00, 100000, 18814117234, '1990-12-12', 12345678, '123456@qq.com', 0, 1, 'B3-443', '...', '2014-01-15', 1000000, 12345, '華南理工門店');
insert into member(member_num, name, category_id, account, integral, phone, birthday, qq, email, onaccount, status, address, tip, start_date, valid_date, password, store_name) values('1000004', '成龍', 4, 100.00, 100000, 18814117723, '1990-12-12', 12345678, '123456@qq.com', 0, 1, 'B3-442', '...', '2014-01-15', 1000000, 12345, '華南理工門店');
insert into member(member_num, name, category_id, account, integral, phone, birthday, qq, email, onaccount, status, address, tip, start_date, valid_date, password, store_name) values('1000005', '范兵兵', 4, 100.00, 100000, 18814117327, '1990-12-12', 12345678, '123456@qq.com', 0, 1, 'B3-441', '...', '2014-01-15', 1000000, 12345, '華南理工門店');


3、創(chuàng)建存儲過程
復(fù)制代碼 代碼如下:

--調(diào)用存儲過程f_get_member_info, 返回會員的所有信息
--memberType:會員類型 status:會員狀態(tài)  findCondition:查詢條件(卡號/電話/姓名)  store_name:商店名稱  
create or replace function f_get_member_info(memberType int, status int, findCondition text, store_name text) returns setof record as
$$
declare
rec record;
begin
  for rec in EXECUTE 'select m.member_num, m.name, m_t.name, m_t.discount_rate, m.account,  m.integral, m.phone, m.birthday, m.qq, m.email, m.onAccount, m.status, m.address, m.tip, m.start_date, m.valid_date, m.store_name from member m, member_category m_t where m.category_id = m_t.id and m_t.id = '|| memberType ||' and m.status = '|| status ||' and m.store_name = '''|| store_name ||''' and (m.member_num like ''%'|| findCondition ||'%'' or m.name like ''%'|| findCondition ||'%'' or m.phone like ''%'|| findCondition ||'%'');' loop
    return next rec;
  end loop;
return;
end
$$
language 'plpgsql';

4、調(diào)用存儲過程
復(fù)制代碼 代碼如下:

--調(diào)用存儲過程f_get_member_info示例
select * from f_get_member_info(4, 1, '', '華南理工門店') as member(member_num text,mname text,name text,discount_rate real,account numeric(16,2),integral int,phone text,birthday date,qq int,email text,onAccount int,status int,address text,tip text,start_date date,valid_date int,store_nam text);

5、測試結(jié)果

您可能感興趣的文章:
  • 獲取SqlServer存儲過程定義的三種方法
  • 解析:php調(diào)用MsSQL存儲過程使用內(nèi)置RETVAL獲取過程中的return值
  • PHP調(diào)用MsSQL Server 2012存儲過程獲取多結(jié)果集(包含output參數(shù))的詳解
  • mysql存儲過程 在動態(tài)SQL內(nèi)獲取返回值的方法詳解
  • SqlServer獲取存儲過程返回值的實例
  • sql存儲過程獲取漢字拼音頭字母函數(shù)
  • delphi mysql adbquery數(shù)據(jù)提供程序或其他服務(wù)返回 E_FAIL 狀態(tài)
  • sql添加數(shù)據(jù)后返回受影響行數(shù)據(jù)
  • Mysql中返回一個數(shù)據(jù)庫的所有表名,列名數(shù)據(jù)類型備注
  • sql獲取存儲過程返回數(shù)據(jù)過程解析

標(biāo)簽:黃石 舟山 白山 呼倫貝爾 楚雄 池州 菏澤 安順

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PostgreSQL中調(diào)用存儲過程并返回數(shù)據(jù)集實例》,本文關(guān)鍵詞  PostgreSQL,中,調(diào)用,存儲,過程,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《PostgreSQL中調(diào)用存儲過程并返回數(shù)據(jù)集實例》相關(guān)的同類信息!
  • 本頁收集關(guān)于PostgreSQL中調(diào)用存儲過程并返回數(shù)據(jù)集實例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    舟曲县| 勐海县| 镇安县| 开江县| 乌苏市| 定安县| 登封市| 陵水| 呼玛县| 合阳县| 云梦县| 咸丰县| 湘阴县| 习水县| 高阳县| 巴东县| 如皋市| 偃师市| 磴口县| 安康市| 平和县| 渝北区| 平远县| 平安县| 库尔勒市| 泗阳县| 焦作市| 南雄市| 苍山县| 临泉县| 务川| 景德镇市| 望城县| 彭山县| 平湖市| 满洲里市| 洛南县| 丽水市| 天门市| 宁波市| 山东|