【django入门】 05 ORM连接mySQL,调整表结构
ORM —— Object Relational Mapping 对象关系映射
利用ORM写SQL语句,换句话说,用另一种语法写SQL语句
—— 疑问:这相对于SQL并不简便,这么做意义何在?
准备
- 安装python库 mysqlclient
pip install mysqlclient
- 创建mysql数据库,取名testDB
python可以创建表,但不能创建数据库
create database testDB default charset utf8mb4 collate utf8mb4_general_ci;
- 更新settings.py
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'testdb',
'USER': 'root',
'PASSWORD': '123',
'HOST': '127.0.0.1',
'PORT': '3306',
}
}
1. 创建table
- APP目录下models.py内输入代码
class UserInfo(models.Model):
name = models.CharField(max_length=32)
password = models.CharField(max_length=64)
age = models.IntegerField(default=0)
第1行:class类命名习惯,驼峰(首字母也大写)
第1行:models.Model,括号内第二个Model首字母须大写
第234行:每种Field都是首字母大写(也许因为这些Field都是类)
- 同步到mySQL
(前提是已在settings.py =→ INSTALLED_APPS内注册了本APP)
python manage.py makemigrations
python manage.py migrate
2. 删除table
删除models.py中具体class,同步即可
3. 删除字段(列)
删除class下字段即可
4. 新增字段(列)
注意,须设置该字段参数——default = ? 或者 null=true blank = true
来源:BV1NL41157 武沛齐《2022 B站最详细django3教程(django从入门到实践)》P12-P16
Original: https://www.cnblogs.com/navii/p/15868477.html
Author: navii
Title: 【django入门】 05 ORM连接mySQL,调整表结构
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/615297/
转载文章受原作者版权保护。转载请注明原作者出处!