libro
www.tuyano.com
初心者のためのDjango 2.0入門

データベースを使おう! (2/5)

作成:2017-12-30 08:37
更新:2017-12-30 08:37

■その他のデータベースを使う場合は?

SQLite3を利用する場合は、設定をいじる必要はなく、このまますぐにデータベースを使い始めることができるのですが、それ以外のデータベースを利用したい場合は、settings.pyDATABASESの値を修正してやる必要があります。

一般に利用者が多いのは、MySQLやPostgreSQLなどでしょう。これらの場合、ENGINENAMEだけあればいい、というわけにはいきません。サーバー型のデータベースを利用する場合、アクセスする利用者に関する設定情報なども用意しておく必要があります。では、基本的な書き方をまとめておきましょう。

・MySQLの場合

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': データベース名,
        'USER': 利用者名,
        'PASSWORD': パスワード,
        'HOST': ホスト,
        'PORT': '3306',
    }
}

NAMEUSERPASSWORDといったものをそれぞれの環境に応じて書き換えればいいでしょう。HOSTは、Webサーバーと同じサーバーマシン上で動かしているなら略して構いませんし、PORTもデフォルトのポート番号(3306)なら省略しても大丈夫です。

・PostgreSQLの場合
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': データベース名,
        'USER': 利用者名,
        'PASSWORD': パスワード,
        'HOST': ホスト,
        'PORT': '5432',
    }
}

これも、基本的にはMySQLと書き方は同じですね。やはり、ホストやポート番号はデフォルトのままならば省略しても構いません。

Djangoでは、この他、Oracleにも対応していますが、個人でオラクルを利用している人はまずいないでしょうから省略します。MySQL、PostgreSQL、SQLite3。この3つがDjangoで使える基本データベースと考えていいでしょう。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

●プログラム・リスト●

※MySQLの場合

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': データベース名,
        'USER': 利用者名,
        'PASSWORD': パスワード,
        'HOST': ホスト,
        'PORT': '3306',
    }
}

※PostgreSQLの場合

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': データベース名,
        'USER': 利用者名,
        'PASSWORD': パスワード,
        'HOST': ホスト,
        'PORT': '5432',
    }
}
※関連コンテンツ

「初心者のためのDjango 2.0入門」に戻る