Django ORM の概要
Raw データベース操作モード (ネイティブ SQL)
まず、ORM を使用しない場合は、MYSQL + Pymysql を使用してデータベースを操作できます。
操作方法は以下の通りです。
import pymysql
db = pymysql.connect(host="", user="", password="", database="", port="")
cur = db.cursor()
sql_message = 'select name from user_table'
cur.execute(sql_message)
data = cur.fetchall()
cur.close()
db.close()
Django はデータベースを開発および運用し、mysql の操作を容易にします
最初にサードパーティ モジュールをダウンロードするには
pip install mysqlclient
では、ORM で何ができるでしょうか。
テーブルの追加、削除、変更、チェックを手伝ってくれます。(SQL ステートメントを記述する必要はありません) [ただし、ライブラリの作成を支援することはできません]
MYSQL データベースへの Django リンク
私たちのものを見つけてsetting.py
から、DATABASES の変数構成を見つけて、それを変更します。
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'django_test', # 数据库名字
'USER': 'root', # 用户名
'PASSWORD': 'xxxxx', # 密码
'HOST': 'xxx.xxx.xxx.xxx', # 主机ip
'PORT': 'xxxx' # 端口
}
}
次に、app フォルダーの下のモデルに移動し、コードの記述を開始します。
class UserInfo(models.Model):
name = models.CharField(max_length=10)
age = models.IntegerField()
gender = models.CharField(max_length=2)
ここでは、名前、年齢、性別がすべてフィールドにマッピングされ、クラス名 UserInfo がテーブル名になっています。
次に、データベースをモデル化するための 2 つの命令の実行を開始します
python manage.py makemigrations
python manage.py migrate
次に、データベースに多くのテーブルがあることがわかります。そのうちの 1 つは、今書いたコードのフィールド テーブルです。