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的版本。

相关推荐
luoluoal8 小时前
基于python的英汉电子词典软件(源码+文档)
python·mysql·django·毕业设计·源码
UCH1HA8 小时前
MySQL主从复制与读写分离
linux·mysql·集群
自燃人~8 小时前
为什么MySQL用b+不用B数
数据库·mysql
bjzhang759 小时前
Dorisoy.AMS--一款采用C# WinForm框架+SQLite数据库的企业/机构资产管理解决方案
sqlite·c#·资产管理
warton889 小时前
ubuntu24.04 安装mysql8.0.36
linux·运维·mysql
小Mie不吃饭10 小时前
Oracle vs MySQL 全面对比分析
数据库·mysql·oracle
扶尔魔ocy11 小时前
【linux C】在mysql中增加自定义的C动态库
linux·运维·mysql
kabcko11 小时前
CentOS安装Mysql
mysql·adb·centos
ruleslol11 小时前
MySQL 工具使用指南
mysql
爱学java的ptt11 小时前
mysql的存储引擎
数据库·mysql