如何在Python代码中使用postgres游标

如何在Python代码中使用postgres游标,python,postgresql,stored-procedures,cursor,psycopg2,Python,Postgresql,Stored Procedures,Cursor,Psycopg2,我在postgres中有一个存储函数: CREATE FUNCTION return_curs() RETURNS refcursor AS $$ BEGIN OPEN cursor_x FOR SELECT col FROM table_y; RETURN cursor_x; END; $$ 然后在Python中,我想调用这个过程,使用psycopg2逐行获取返回的游标,以供Exapple使用。 有什么方法可以做到这一点吗?谢谢 让psycopg2做创建工作更容易: 要使用返

我在postgres中有一个存储函数:

CREATE FUNCTION return_curs() RETURNS refcursor AS $$
BEGIN
    OPEN cursor_x FOR SELECT col FROM table_y;
    RETURN cursor_x;
END; $$
然后在Python中,我想调用这个过程,使用psycopg2逐行获取返回的游标,以供Exapple使用。
有什么方法可以做到这一点吗?谢谢

psycopg2
做创建工作更容易:

要使用返回游标函数,请按常规执行该函数:

cur = conn.cursor()
cur.callproc('return_curs')
然后使用命名游标捕捉返回的游标:

named_cursor = conn.cursor(name='cursor_x')
for row in named_cursor:
    print row

psycopg2
做创建工作更容易:

要使用返回游标函数,请按常规执行该函数:

cur = conn.cursor()
cur.callproc('return_curs')
然后使用命名游标捕捉返回的游标:

named_cursor = conn.cursor(name='cursor_x')
for row in named_cursor:
    print row

psycopg2
做创建工作更容易:

要使用返回游标函数,请按常规执行该函数:

cur = conn.cursor()
cur.callproc('return_curs')
然后使用命名游标捕捉返回的游标:

named_cursor = conn.cursor(name='cursor_x')
for row in named_cursor:
    print row

psycopg2
做创建工作更容易:

要使用返回游标函数,请按常规执行该函数:

cur = conn.cursor()
cur.callproc('return_curs')
然后使用命名游标捕捉返回的游标:

named_cursor = conn.cursor(name='cursor_x')
for row in named_cursor:
    print row

谢谢,我知道服务器端游标,但这里我们需要以某种方式利用数据库中现有的存储函数。谢谢,我知道服务器端游标,但这里我们需要以某种方式利用数据库中现有的存储函数。谢谢,我知道服务器端游标,但这里我们需要以某种方式利用数据库中现有的存储函数。谢谢,我知道服务器端游标,但这里我们需要以某种方式利用数据库中现有的存储函数。