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

相关推荐
总捣什么乱11 小时前
MySQL MySQL是怎么保证主备一致的?
android·mysql·adb
韭菜炒鸡肝天3 小时前
Django模型迁移指南:从命令用法到最佳实践
数据库·django·sqlite
鹿鸣天涯3 小时前
应急响应:MySQL日志分析
mysql·安全·adb·oracle
学编程就要猛4 小时前
解析博客系统后端实现
java·mysql·jwt·摘要算法·加盐
96245619 小时前
从 DBeaver 内存溢出到流式导入:一个 MySQL 生产数据迁移工具的开发实战
数据库·mysql·adb
BLSxiaopanlaile20 小时前
关于 select count(*)的一些总结
后端·mysql
ClouGence21 小时前
MySQL迁移到达梦怎么做?信创数据库低停机迁移实战
数据库·sql·mysql
万亿少女的梦1681 天前
基于Spring Boot、Vue.js与MySQL的流浪猫狗救助系统设计与实现
vue.js·spring boot·mysql·javaweb·权限管理
2601_960906721 天前
华为MateBook Pro S首发搭载麒麟XE90
华为·postgresql·sqlite·时序数据库·tdengine
要开心吖ZSH1 天前
一次 HikariCP 连接池耗尽导致的线上雪崩排查实录——完整排查报告
java·spring boot·mysql·连接池·hikaricp