Модуль Python MySQL - PullRequest
       5

Модуль Python MySQL

6 голосов
/ 05 сентября 2010

Я занимаюсь разработкой веб-приложения, которое должно взаимодействовать с базой данных MySQL, и я не могу найти какие-либо действительно хорошие модули для Python.

Я специально ищу быстрый модуль, способный обрабатывать сотни тысяч соединений (и запросов, все в течение короткого промежутка времени друг с другом), без существенного влияния на скорость.

Ответы [ 4 ]

10 голосов
/ 03 января 2013

Я думаю, что моим ответом будет обновление игрового поля.

Теперь есть официальный MysQL Python Connector.

Установка:

sudo pip install mysql-connector-python

Или загрузитьэто отсюда:

http://dev.mysql.com/downloads/connector/python/

Документация: http://dev.mysql.com/doc/refman/5.5/en/connector-python.html

7 голосов
/ 05 сентября 2010

MySQLdb - практически единственная в городе игра для доступа к Python MySQL.

2 голосов
/ 05 сентября 2010

Я обычно использую SQLObject , но я не использовал его в условиях высокой нагрузки, поэтому я не мог ручаться за производительность (сказав, что я не буду говорить против it).

Чтобы скопировать демонстрационный код из другого ответа:

from sqlobject import *

# Replace this with the URI for your actual database
connection = connectionForURI('mysql://server:XXXX')
sqlhub.processConnection = connection

# This defines the columns for your database table. See SQLObject docs for how it
# does its conversions for class attributes <-> database columns (underscores to camel
# case, generally)

class Song(SQLObject):

    name = StringCol()
    artist = StringCol()
    album = StringCol()

# Create fake data for demo - this is not needed for the real thing
def MakeFakeDB():
    Song.createTable()
    s1 = Song(name="B Song",
              artist="Artist1",
              album="Album1")
    s2 = Song(name="A Song",
              artist="Artist2",
              album="Album2")

def Main():
    # This is an iterable, not a list
    all_songs = Song.select().orderBy(Song.q.name)

    # Do something by iterating over the song list...
1 голос
/ 25 сентября 2010

oursql - еще одна опция для доступа к python-mysql.Это гораздо более полная оболочка libmysqlclient, чем MySQLdb.В моем опыте он работает быстрее с большим количеством приятных дополнительных функций.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...