今回は、Webフレームワークと組み合わせて、Django MySQLの使い方を学びます。
なぜ SQLite よりも MySQL なのか?
デフォルトの SQLite と比較して、MySQL はより安全で、高度に進化しています。
また、大量のデータを扱うことができるため、大規模に使用することができます。
また、スピードに関しても、MySQLはより効率的かつ効果的に動作します。
Structured Query Language (構造化照会言語)
SQL を使用すると、データベースにアクセスし、操作することができます。
これを使うと、次のようなさまざまな作業を行うことができます。
- データベースへのレコードの追加
- テーブルの作成
- CRUD (Create、Read、Update、Delete) 操作の実行
SQLは、データベースシステムで使用される言語です。
データベースを適用して設定するには、MySQL、PostgreSQL、OracleなどのようなRDBMSのいずれかが必要です。
推奨 JournaldevのSQLチュートリアル
私たちのDjango開発でDjango MySQLを使用する
基本的なことがわかったので、今すぐ Django MySQL 開発を始める方法を理解しましょう。
提案します。
1. デモ用MySQLデータベース
以下は、今回のデモで使用するデモテーブルです。
ID | 名前 | 都市名 | 国名 |
---|---|---|---|
1|ロン|NY|USA | |||
2|ドレイク|LA|USA|(米国 | |||
3 リチャード バイエルン ドイツ | |||
4|ノエル|ラスベガス|米国 | |||
5|ジョーンズ|ミュンヘン|ドイツ||||||。 | |||
6|ケイン|NY|USA||の4つのフィールド。 |
DBテーブルここでは、4つのフィールドと6つのレコードがあります。
基本的なSQLステートメントです。
- SELECT FROM – このステートメントは、テーブルからフィールド(すべてまたはいくつか)を選択します。
- WHERE – これは一般的に他の文と一緒に使用される条件文です。このステートメントによって設定された条件を満たすこれらのレコードを使用して選択されます。
- UPDATE – このステートメントは、テーブルを更新します。
- EDIT – この文は、レコード/レコードのフィールドを編集します。
- DELETE – この文は、レコード/レコードのフィールドを削除します。
2. サーバーにXAMPPをインストールする
さて、MySQLを使用するためには、Web上でMySQLの管理を行うためのソフトウェアツールを使用する必要があります。
多くのツールがありますが、今回は非常にシンプルで効率的な作業環境であるphpMyAdminを使用することにします。
XamppソフトウェアがPHPMyAdminのWebインターフェイスを提供してくれます。
そこで、phpMyAdminを使うために、まずXamppをダウンロードします。
XAMPPをダウンロードするにはここをクリックしてください。
あなたのOSとアーキテクチャに合ったバージョンをダウンロードしてください。
pip install mysqlclient |
3. ApacheとMySQLを起動する
手順に沿ってXAMPPをインストールしたら、以下の2つのプロセスを開始します。
- Apacheウェブサーバ – HTTPリクエストの処理用
- MySQLサーバ – データベース用
DATABASES = {
'default' : {
'ENGINE' : 'django.db.backends.mysql' ,
'NAME' : <Database_name>,
'USER' : 'root' ,
'PASSWORD' :'',
'HOST' : 'localhost' ,
'PORT' : '3306' ,
}
} |
MySQLのデフォルトのポート番号は3306です。
その後、ブラウザで、https://localhost。
ホストのウェブページが表示されます。
python manage.py makemigrations python manage.py migrate |
右上のphpMyAdminをクリックすると、phpMyAdminのウェブインターフェイスが表示されます。
python manage.py runserver |
ここで
- 左の列で新規をクリックして、新しいデータベースを作成します。
- データベースには適当な名前をつけてください。私は Django という名前にしました。
python manage.py createsuperuser |
4. Python用MySQLクライアントパッケージのインストール
Mysqlclient は MySQL データベースシステム用の Python インターフェースです。
Django などの Python で使えるインターフェイスを MySQL に接続するには Mysqlclient が必要です。
pip コマンドを使用して mysqlclient パッケージをインストールします。
コネクタドライバをインストールしたら、settings.py でデータベース情報を変更する必要があります。
5. Django の settings.py でデータベースの設定をする
settings.py では、以下のように、テーブル、データベースエンジン、ユーザ認証、ホスト、ポートなど、データベース接続の詳細を設定する必要があります。
ここで
- Engine: django.db.backends.mysql – Django MySQL を使っているので、ここで設定します。
- 名前。名前: ここにデータベースの名前を入力します。
- User: Xamppソフトウェアのデフォルトのユーザは “root “です。
- パスワード:rootのデフォルトのパスワードは空です。
- Host: Host:ホストは、localhostだけになります。
- Port: 先ほどのMySQLのポート(3306)です。
この記事もチェック:Djangoで入力フォームを作ってユーザーの入力を受け付ける方法
6. Django MySQL を実装する
さて、Django で MySQL データベースを扱い始めなければなりません。
サーバをセットアップしましょう。
以上で、変更が保存されました。
これでサーバを動かして確認できます。
では、Django アプリケーションサーバを実行します。
ここで、管理サイトに移動しようとすると、Django はスーパーユーザに関するエラーメッセージを表示します。
これは、スーパーユーザの詳細、モデルテーブルのエントリが、全て先の DB SQLite にあり、MySQL にないためです。
そのため、ターミナルでスーパーユーザを再度作成し、テーブルの項目を追加し直す必要があります。
以上で、DjangoとMySQLの接続は完了です。
DBへのアイテムの追加
これは2つの方法で行うことができます。
管理サイトを経由する方法と、PHPMyAdminサイトを経由する方法です。
1) 管理サイトからのCRUD操作
これは、今までと同じ方法です。
ItemModelのアイテムの追加、編集、削除は、管理サイトを通して行います。
DBを変更したため、テーブル内のアイテムはすべて失われます。
そのため、管理サイトを利用して、いくつかのアイテムを追加します。
上記の情報は、自動的にMySQLのDBに追加されます。
phpMyAdmin サイトに行き、Django DB の ItemModel を選択します。
テーブルの中の全てのアイテムがそこにあることが確認できます。
2) phpMyAdminサイトによるCRUD操作
上記のphpMyAdminサイトでは、アイテムの追加、編集、削除のオプションがあります。
編集・削除:項目情報の他に、編集、削除のオプションがあります。
これを利用して、phpMyAdminサイトから編集や削除を行うことができます。
項目を追加します。
一番上に、INSERTオプションがあります。
そこに項目情報を追加してください。
項目情報を入力し、「go」をクリックします。
これで完了です。
ペンシルアイテムが追加されました。
管理画面だけでなく、ブラウズオプションでも確認することができます。
管理サイトをリロードすると、新しいアイテムが表示されます。
Django で MySQL を使うことがいかに簡単かを見てみましょう。
この記事もチェック:Djangoのモデルの作成や取得、更新、削除について解説する
まとめ
以上、皆さん! これは MySQL と Django との接続方法についての全てです。
練習として、MySQL をデータベースとして使ったウェブアプリを作ってみてください。
次回は、 PostgreSQL と Django の組み合わせについて説明します。
それまでは、公式ウェブサイトから MySQL についてもっと知ることができます。
安全でいてください !!! 学習を続けてください !!!