MySQL- Руководство разработчика

Экспортируемые типы, функции и классы


Модуль MySQL экспортирует следующее:

  • DBH_Type:
    Тип объекта базы данных.
  • STH_Type:
    Тип ошибки объекта курсора (исключительная ситуация, выдаваемая в некоторых обстоятельствах вместо TypeError).
  • __doc__:
    Версия, доступная из Python
  • connect([host[,user[,pass]]])
    Функциональный возврат объекта базы данных. Факультативные параметры: имя компьютера (host), с которым надлежит соединиться, username для связи с MySQL и соответствуюющий пароль password. Если никакой компьютер не задан, функция примет localhost (и будет использовать Unix-сокет для подключения к нему).
  • escape(string)
    Вернет правильно экранированную строку, чтобы позволить вставку в DB. Эта подпрограмма вызывает mysql_escape_string(), которая в 3.21.29-gamma не работает. Версия 3.21.30 и выше работают нормально.

Обратите внимание: в следующем "таблица" означает "список списков" (за исключением fetchdict). MySQL.connect() вернет дескриптор базы данных (DBH) со следующими методами:

  • Table = DBH.listdbs([wild])
    Возвращает таблицу, дающую имена баз данных на компьютере MySQL, с которым соединился через вызов MySQL.connect(). Факультативный параметр: MySQL-строка с символами подстановки (синтаксис аналогичен LIKE).
  • DBH.selectdb(DB_Name[,storage])
    Присоединяет этот объект к специфической базе данных. Выполненные запросы будут направлены к этой базе данных, пока не будет сделано другое обращение метода selectdb. Факультативный параметр storage типа integer может использоваться, чтобы хранить наборы результатов запросов на сервере. Обратите внимание, что это отрицательно воздействует на эффективность сервера, но позволяет клиентуре с маленькой памятью работать с записями по мере надобности. Значение по умолчанию: 0, то есть все записи перемещены пользователю сразу.
  • Table = DBH.listtables([wild])
    Возвращает таблицу с именами таблиц в выбранной базе данных. Имеет силу только после того, как было сделано обращение selectdb. Факультативный параметр может использоваться, чтобы ограничить возвращенный набор таблиц (тот же самый синтаксис, какой принят в LIKE).
  • Table = DBH.listfields(table[,wild])
    Возвращает таблицу описаний полей в данной таблице. Факультативный параметр может использоваться, чтобы ограничить возвращенный набор полей (тот же самый синтаксис, какой принят в LIKE).
  • Table = DBH.listprocesses()
    Возвращает информацию относительно работающих процессов MySQL. Требует соответствующих привилегий (иначе возвращает None).
  • String = DBH.stat()
    Возвращает информацию состояния из MySQL.
  • DBH.create(DB_Definition)
    Создает новую базу данных.

  • DBH.drop(DB_Name)
    Удаляет базу данных.
  • DBH.reload()
    Перезагружает таблицы привилегий MySQL.
  • DBH.shutdown()
    Завершает сервер MySQL.
  • DBH.close()
    Закрывает DB-подключение.
  • String = DBH.clientinfo()
    Возвращает информацию о версии MySQLmodule.
  • String = DBH.serverinfo()
    Возвращает информацию о сервере MySQL.


  • String = DBH.hostinfo()
    Возвращает информацию относительно хоста соединения и типа подключения.
  • Integer = DBH.protoinfo()
    Возвращает информацию о версии протокола MySQL.
  • Table = DBH.do(query) или Table = DBH[query]
    Возвращает результат запроса SQL или число обработанных строк. Оба метода используют тип памяти, установленный в DBH.selectdb().
  • Integer = DBH.insert_id()
    Предоставляет доступ к последнему сгенерированному числу auto_increment. Это число может изменяться, если были запросы между обращениями.
  • STH = DBH.query(query[,storage])
    Возвращает операторный дескриптор для методов курсора (см. ниже). Факультативный параметр storage может использоваться, чтобы отменить значение по умолчанию DBH, установленное DBH.selectdb().


  • Методы для операторных дескрипторов (STH):


    • Table = STH.fetchrows([n])
      Возвращает результаты запроса к DB. Если n<0, все строки будут выбраны. Иначе будут возвращены только следующие n строк. Значение по умолчанию должно возвратить все строки.
    • Table = STH.fetchdict([n])
      Аналогично STH.fetchrows(), за исключением того, что список словарей возвращен с парами tablename.fieldname:data.
    • Table = STH.fields()
      Возвращает описания поля результата запроса STH. В настоящее время MySQLmodule понимает "pri", "notnull", "auto_inc", "ukey" и "mkey" .
    • STH.seek(n)
      Двигает курсор к строке n (0 определяет первую строку). Доступен только, если результат хранится на стороне пользователя (выбрано в DBH.selectdb). Иначе создает исключительную ситуацию.
    • Integer = STH.numrows()
      Возвращает, сколько строк находятся в результате запроса STH. Предупреждение: в действительности это число отражает сколько записей получил клиент. Для методов хранения на стороне сервера, это начинается с 0 и увеличивается по мере того, как пользователь выбирает строки. Для методов хранения на стороне клиента это число немедленно дает общее количество строк для этого запроса.
    • Integer = STH.numfields()
      Возвращает, сколько столбцов находятся в результате запроса STH.
    • Integer = STH.affectedrows()
      Возвращает данные на сколько строк воздействовал последний запрос. Обратите внимание, что MySQL не всегда возвращает правильное значение.
    • Integer = STH.insert_id()
      Возвращает значение auto_increment из STH-запроса insert. Обратите внимание, что это число постоянно, пока STH существует.
    • Integer = STH.eof()
      Возвратит 1, если последняя строка читалась, иначе 0. Всегда 1, если выбрано хранение данных на стороне пользователя (значение по умолчанию).



    Содержание раздела