Re: some hints to understand the plsql cursor.
От | Dilip Kumar |
---|---|
Тема | Re: some hints to understand the plsql cursor. |
Дата | |
Msg-id | CAFiTN-uPvS+e9bBo5EUmyOhQ2_uOuWbi7TgteU0Y84zM_FNbTA@mail.gmail.com обсуждение исходный текст |
Ответ на | some hints to understand the plsql cursor. (Andy Fan <zhihui.fan1213@gmail.com>) |
Ответы |
Re: some hints to understand the plsql cursor.
|
Список | pgsql-hackers |
On Wed, Feb 27, 2019 at 4:42 PM Andy Fan <zhihui.fan1213@gmail.com> wrote: > > actually I'm hacking pg for a function like : > 1. define a select query. > 2. client ask for some data. and server reply some data. server will do NOTHING if client doesn't ask any more.. > 3. client ask some data more data with a batch and SERVER reply some data then. then do NOTHING. > > currently the simple "select * from t", the server will try to send the data to client at one time which is not somethingI want. > > by looking into the plsql, looks it has some api like: > > fetch 10 from cursor_1; > fetch 10 from cursor_1; > > I'm lacking of the experience to hack plsql. so my question are: > 1. Does pg has some codes which act like the "ask -> reply -> ask again -> reply again" on the server code? currentlyI'm not sure if the above "fetch" really work like this. > 2. any resources or hint or suggestion to understand the "fetch" statement? I guess you are looking for these syntax? postgres=# BEGIN; BEGIN postgres=# DECLARE cur CURSOR FOR SELECT * FROM t; DECLARE CURSOR postgres=# FETCH NEXT cur; a --- 1 (1 row) postgres=# FETCH 10 cur; a --- 2 3 4 5 1 2 3 4 5 6 (10 rows) postgres=# FETCH NEXT cur; a --- 7 (1 row) postgres=# CLOSE cur; CLOSE CURSOR -- Regards, Dilip Kumar EnterpriseDB: http://www.enterprisedb.com
В списке pgsql-hackers по дате отправления: