Гость
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Вопрос новичка про доступ к БД из Python (setFetchSize) / 4 сообщений из 4, страница 1 из 1
23.05.2017, 16:33
    #39458267
Victor Metelitsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос новичка про доступ к БД из Python (setFetchSize)
Решил попробовать Python,
взял код с https://www.ibm.com/support/knowledgecenter/SSEPGG_10.5.0/com.ibm.swg.im.dbclient.python.doc/doc/t0054388.html
(наподобие такого)
Код: python
1.
2.
3.
4.
5.
6.
7.
8.
9.
import ibm_db
conn = ibm_db.connect("database","username","password")
sql = "SELECT * FROM EMPLOYEE"
stmt = ibm_db.exec_immediate(conn, sql)
dictionary = ibm_db.fetch_both(stmt)
while dictionary != False:
    print "The ID is : ",  dictionary["EMPNO"]
    print "The Name is : ", dictionary[1]
    dictionary = ibm_db.fetch_both(stmt)

, работает.
Однако я нигде не нашёл аналога java'вского setFetchSize() из JDBC.

Пакетные insert/update/delete я нашёл - в коде драйвера, но не в документации, так что не факт, что оно работает, надо проверять. А пакетного чтения не нашёл. Но, по-моему, так просто не должно быть. Читать по сети по одной строчке - бессмысленные тормоза. Плохо искал? Или это недоделка драйвера IBM DB2, а у других СУБД с этим всё в порядке?
...
Рейтинг: 0 / 0
23.05.2017, 17:45
    #39458351
mini.weblab
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос новичка про доступ к БД из Python (setFetchSize)
Victor Metelitsa,

ibm db никогда не использовала, но у драйвера psycopg2 (PostgreSQL) таких проблем нет

документация по драйверу psycopg2 (PostgreSQL): http://initd.org/psycopg/docs/cursor.html#cursor.setinputsizes
смотрите раздел Results retrieval methods: fetchmany(), arraysize, itersize
...
Рейтинг: 0 / 0
23.05.2017, 19:07
    #39458408
Victor Metelitsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос новичка про доступ к БД из Python (setFetchSize)
Спасибо. Стало быть, называется itersize (Read/write attribute specifying the number of rows to fetch from the backend at each network roundtrip during iteration on a named cursor). На https://github.com/ibmdb/python-ibmdb/wiki/APIs не усматриваю. Хотя префетчинг у питоньего драйвера DB2, быть может, таки организован, только под ковром (вплоть до уровня DLL) и не настраивается, надо проверять. Пачечные insert/delete/update выполняются через ibm_db.execute_many.
...
Рейтинг: 0 / 0
12.06.2017, 18:22
    #39470572
danna0
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос новичка про доступ к БД из Python (setFetchSize)
ну да называется itersize
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Вопрос новичка про доступ к БД из Python (setFetchSize) / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]