|
|
|
|||
| WebMoney: WMZ Z294115950220 WMR R409981405661 WME E134003968233 |
Visa 4274 3200 2453 6495 |
Connector/Python понимает расширение C, которое взаимодействует с
библиотекой MySQL C клиента. Для запросов, которые возвращают большие наборы
результатов, использование расширение C, может улучшить работу по сравнению с
pure Python-реализацией протокола клиент-сервер.
Раздел 8.1
описывает, как запросы, которые используют модуль
Расширение C было добавлено в версии 2.1.1 и включено по умолчанию с
8.0.11. Опция Установки Connector/Python с версии 2.1.1 понимают параметр
По умолчанию В Linux реализации C и Python доступны как различные пакеты.
Можно установить одно или оба решения на той же самой системе.
На Windows и macOS пакеты включают оба. Для установок Connector/Python, которые включают оба варианта, это может
произвольно быть переключено через
Для установок Connector/Python, которые не включают расширение C,
передача Для более старых установок Connector/Python, которые не знают ничего
о расширении C (перед версией 2.1.1) передача
В macOS если ваша установка Connector/Python включает расширение C, но
скрипты Python неспособны использовать его, попытайтесь установить вашу
переменную Если бы вы построили расширение C из исходного текста, этот каталог
должен быть тем, который содержит библиотеку клиента C, с которой
было построено расширение. Если необходимо проверить, знает ли установка Connector/Python о
расширении C, проверьте значение Следующий пример иллюстрирует один способ добавить
Если Чтобы использовать расширение C непосредственно, импортируйте
модуль Для получения дополнительной информации см.
главу 11.
Глава 8. Расширение Connector/Python C
mysql.connector, могут использовать расширение
C. Также возможно использовать расширение C непосредственно, импортируя
модуль _mysql_connector вместо
mysql.connector.
См. раздел 8.2.
Для получения информации об установке расширения C см.
главу 4.use_pure определяет, какая
версия применяется: Python или C.
8.1. Разработка приложений с расширением С Connector/Python
use_pure для
mysql.connector.connect(), который указывает,
использовать ли чистый интерфейс Python для MySQL или расширение C, которое
пользуется библиотекой клиента:use_pure (используйте
Python) = False с MySQL 8 или
True в более ранних версиях. Если расширение C
недоступно на системе, тогда use_pure =
True.use_pure=False (использовать C) или
use_pure=True (использовать Python)
как параметр mysql.connector.connect().use_pure=False
mysql.connector.connect()
поднимает исключение.use_pure в
mysql.connector.connect()
поднимает исключение независимо от его значения.DYLD_LIBRARY_PATH к каталогу,
содержащему библиотеку клиента C. Например:
export DYLD_LIBRARY_PATH=/usr/local/mysql/lib (for sh)
setenv DYLD_LIBRARY_PATH /usr/local/mysql/lib (for tcsh)
HAVE_CEXT.
Есть разные подходы для этого. Предположим что ваши обычные аргументы для
mysql.connector.connect()
определяются в словаре:
config = {
'user': 'scott',
'password': '
password',
'host': '127.0.0.1',
'database': 'employees',
}
use_pure к аргументам соединения:
import mysql.connector
if mysql.connector.__version_info__ > (2, 1) and
mysql.connector.HAVE_CEXT:
config['use_pure'] = False
use_pure=False
и расширение C недоступно, тогда Connector/Python
автоматически отступит к чистому внедрению Python.
8.2. Дополнительный модуль _mysql_connector C
_mysql_connector вместо
mysql.connector, затем используйте класс
_mysql_connector.MySQL(), чтобы получить
экземпляр MySQL, например:
import _mysql_connector
ccnx = _mysql_connector.MySQL()
ccnx.connect(user='scott', password='
password',
host='127.0.0.1', database='employees')
ccnx.query("SHOW VARIABLES LIKE 'version%'")
row = ccnx.fetch_row()
while row:
print(row)
row = ccnx.fetch_row()
ccnx.free_result()
ccnx.close()
| Найди своих коллег! |
Вы можете
направить письмо администратору этой странички, Алексею Паутову.
![]()