Skip to content

一次提取多行结果集

#!/usr/bin/python3
import xgcondb

conn = xgcondb.connect(host="127.0.0.1", port="5138", database="SYSTEM", user="SYSDBA", password="SYSDBA")

cur = conn.cursor()
try:
        #cur.execute("SELECT * FROM TAB_FETCHMANY_TEST1;")
         #execute()
        print("execute()")
        #cur.execute("CREATE TABLE TAB_FETCHMANY_TEST1(A INT, B INT, C VARCHAR, D DATETIME, E NUMBER(4,2))")
        cur.execute("INSERT INTO TAB_FETCHMANY_TEST1 VALUES(1001,2001,'Xugu1','2010-01-01',23.54);")
        cur.execute("INSERT INTO TAB_FETCHMANY_TEST1 VALUES(1002,2002,'Xugu2','2011-01-02',2.354);")
        cur.execute("INSERT INTO TAB_FETCHMANY_TEST1 VALUES(1003,2003,'Xugu3','2012-01-03',35.4);")
        cur.execute("INSERT INTO TAB_FETCHMANY_TEST1 VALUES(1004,2004,'Xugu4','2013-01-04',54.00);")
        cur.execute("INSERT INTO TAB_FETCHMANY_TEST1 VALUES(1005,2005,'Xugu5','2014-01-05',54.10);")
        cur.execute("INSERT INTO TAB_FETCHMANY_TEST1 VALUES(1006,2006,'Xugu6','2015-01-06',54.20);")
        cur.execute("INSERT INTO TAB_FETCHMANY_TEST1 VALUES(1007,2007,'Xugu7','2016-01-07',54.30);")
        cur.execute("SELECT * FROM TAB_FETCHMANY_TEST1;")
        print(cur.arraysize)
        #cur.arraysize=8
        row = cur.fetchmany()
        print(row)

        print("---------")
        cur.execute("SELECT * FROM TAB_FETCHMANY_TEST1;")
        row = cur.fetchmany(size = 2)
        for ro in row:
                print(ro)
        print("+++++++++")
        cur.arraysize = 3
        print(cur.fetchmany())
        print("*********")
        cur.arraysize = 5
        print(cur.fetchmany())
        for ro in row:
                print(ro)
        print(cur.fetchone())
        cur.execute("DROP TABLE TAB_FETCHMANY_TEST1;")
        except Exception as e:
        cur.execute("DROP TABLE TAB_FETCHMANY_TEST1;")