django models对应的mysql类型

Django模型字段类型与MySQL数据库类型的对应关系如下:

|-----------------------|------------------------------|
| Django 模型字段类型 | MySQL 数据库类型 |
| AutoField | BIGINT UNSIGNED |
| CharField | VARCHAR |
| IntegerField | INT |
| DecimalField | DECIMAL |
| DateField | DATE |
| DateTimeField | DATETIME |
| FileField, ImageField | VARCHAR (用于文件路径) |
| BooleanField | BOOL (如果MySQL版本支持) 或 TINYINT |
| TextField | TEXT |

注意:

1、对于BooleanField,MySQL的BOOL类型在较旧的MySQL版本中可能不支持,可以使用TINYINT代替。

2、文件路径通常存储在VARCHAR字段中。

3、日期时间使用DATE、DATETIME或TIMESTAMP字段。

4、十进制数字使用DECIMAL字段。

示例代码:

python 复制代码
from django.db import models
 
class ExampleModel(models.Model):
    id = models.AutoField(primary_key=True)
    name = models.CharField(max_length=100)
    age = models.IntegerField()
    salary = models.DecimalField(max_digits=10, decimal_places=2)
    birth_date = models.DateField()
    last_login = models.DateTimeField()
    is_active = models.BooleanField(default=True)
    description = models.TextField()

在这个示例中,每个字段都会被转换成MySQL数据库对应的类型。BooleanField可能会使用TINYINT代替BOOL,这取决于MySQL的版本。

相关推荐
r***113338 分钟前
【玩转全栈】----Django模板语法、请求与响应
数据库·python·django
q_19132846951 小时前
基于SpringBoot2+Vue2的宠物健康医疗论坛系统
vue.js·spring boot·mysql·健康医疗·宠物·计算机毕业设计
q***75181 小时前
Linux(CentOS)安装 MySQL
linux·mysql·centos
G***E3161 小时前
MySQL增强现实案例
数据库·mysql·ar
小胖同学~1 小时前
浅浅的聊聊MySQL的MVCC
mysql
w***74402 小时前
SQL Server 数据库迁移到 MySQL 的完整指南
android·数据库·mysql
Austindatabases4 小时前
SQLite3 如果突发断电,关机,数据会丢还是不会丢?
数据库·sqlite
凌寒1110 小时前
Linux(Debian)安装、卸载 MySQL
linux·运维·mysql·debian
oneslide11 小时前
分享一个MySQL数据库备份恢复脚本--II
数据库·mysql
q***239212 小时前
MySQL数据库误删恢复_mysql 数据 误删
数据库·mysql·adb