sql >> データベース >  >> RDS >> Mysql

PythonでMySQLデータベースに接続するにはどうすればよいですか?

    3つのステップでPython2を使用してMYSQLに接続する

    1-設定

    何かをする前に、MySQLドライバーをインストールする必要があります。 PHPとは異なり、PythonではSQLiteドライバーのみがデフォルトでインストールされます。そのために最もよく使用されるパッケージは、MySQLdb です。 しかし、easy_installを使用してインストールするのは困難です。 MySQLdbはPython2のみをサポートしていることに注意してください。

    Windowsユーザーの場合、MySQLdbのexe を入手できます。 。

    Linuxの場合、これはカジュアルパッケージ(python-mysqldb)です。 (sudo apt-get install python-mysqldbを使用できます (Debianベースのディストリビューションの場合)、yum install MySQL-python (rpmベースの場合)、またはdnf install python-mysql (最新のfedoraディストリビューションの場合)ダウンロードするコマンドラインで。)

    Macの場合、Macportを使用してMySQLdbをインストール

    2-使用法

    インストール後、再起動します。これは必須ではありませんが、何か問題が発生した場合、この投稿の他の3つまたは4つの質問に答えることができなくなります。再起動してください。

    そうすれば、他のパッケージを使用するのと同じです:

    #!/usr/bin/python
    import MySQLdb
    
    db = MySQLdb.connect(host="localhost",    # your host, usually localhost
                         user="john",         # your username
                         passwd="megajonhy",  # your password
                         db="jonhydb")        # name of the data base
    
    # you must create a Cursor object. It will let
    #  you execute all the queries you need
    cur = db.cursor()
    
    # Use all the SQL you like
    cur.execute("SELECT * FROM YOUR_TABLE_NAME")
    
    # print all the first cell of all the rows
    for row in cur.fetchall():
        print row[0]
    
    db.close()
    

    もちろん、何千もの可能性とオプションがあります。これは非常に基本的な例です。ドキュメントを確認する必要があります。 良い出発点

    3-より高度な使用法

    それがどのように機能するかを理解したら、ORM を使用することをお勧めします。 SQLを手動で記述しないようにし、テーブルをPythonオブジェクトであるため操作します。 Pythonコミュニティで最も有名なORMは、SQLAlchemy です。 。

    ぜひご利用ください。あなたの生活はずっと楽になります。

    最近、Pythonの世界で別の宝石を発見しました: peewee 。これは非常に軽量なORMであり、セットアップと使用が非常に簡単で高速です。 SQLAlchemyやDjangoなどの大きなツールを使用するのはやり過ぎです:

    import peewee
    from peewee import *
    
    db = MySQLDatabase('jonhydb', user='john', passwd='megajonhy')
    
    class Book(peewee.Model):
        author = peewee.CharField()
        title = peewee.TextField()
    
        class Meta:
            database = db
    
    Book.create_table()
    book = Book(author="me", title='Peewee is cool')
    book.save()
    for book in Book.filter(author="me"):
        print book.title
    

    この例は、そのままで機能します。 peewee(pip install peewee)を使用する以外に何もありません )が必要です。



    1. VBAの同じ行で変数を宣言して初期化する

    2. リレーショナルデータベースと非リレーショナルデータベース–パート3

    3. SQLの日付形式:スマートな方法で処理する方法

    4. MySQLルートパスワードをリセットする方法