MySQL & mSQL



              

Основы подключения к базам данных - часть 3


В большинстве случаев различие в типе возвращаемых значений несущественно: кортежи не могут изменяться. Код в большинстве случаев одинаков. Тем не менее следует помнить, что строки MySQL являются списками, а строки mSQL - кортежами, на случай, если вы столкнетесь с ситуацией, где это различие существенно. В примере 11-1 приводится простая Python-программа, обращающаяся к базам данных MySQL и mSQL и выводящая результаты.

Пример 11-1. Обработка запросов в Python дд,я mSQL и MySQL

#!\/usr/local/bin/python

# Импорт модулей import Msql, MySQL;

# Инициализация значений database и query

database = 'db_test';

query = 'SELECT test_id, test_val FROM test';

# Соединение с серверами msql = mSQL.connect();

mysql = MySQL.connect();

# Выбор тестовых баз данных msql.selectdb(database);

mysql.selectdb(database);

# Выполнение запроса

m_result = msql.query(query);

my_result = mysql.do(query);

#Обработка результатов для mSQL

for row in m_result:

# Здесь row является кортежем

print "mSQL- test_id: ",row[0]," test_val: ",row[1];

# Обработка результатов для MySQL

for row in my_result:

ft Здесь row является списком

print "MySQL- test_id: ",row[0]," | test_val: ",row[1];

# Закрыть соединение (только mSQL)

msql.close();

Для обеих баз данных, MySQL и mSQL, приложение просматривает в цикле каждую строку результирующего набора и выводит ее данные. В mSQL первый элемент кортежа представляет первую колонку запроса, а второй элемент - вторую колонку. Аналогично, первый элемент в списке MySQL представляет первую колонку запроса, а второй элемент - вторую колонку.

Обновление

Обновление, вставка и удаление в базе данных производится с помощью того же метода API, что и запросы, - просто не требуется обрабатывать результирующий набор. Иными словами, вызовите query() или do(), и больше ничего не требуется. В MySQL есть дополнительная возможность возврата значения AUTO_INCREMENT , если в затронутой таблице есть поле с атрибутом AUTO_INCREMENT .




Содержание  Назад  Вперед