• python 提示 :OverflowError: Python int too large to convert to C long


    一次在使用orm进行联表查询的时候,出现   Python int too large to convert to C long 的问题:

    在分析错误之后,在错误最后面提示中有:

      File "F:pythonpython3.6libsqlite3dbapi2.py", line 64, in convert_date
        return datetime.date(*map(int, val.split(b"-")))

    在查看我的model.py文件的时候我的模型定义是:

    from django.db import models
    
    
    # Create your models here.
    
    class Book(models.Model):
        nid = models.AutoField(primary_key=True)
        title = models.CharField(max_length=64)
        publishDate = models.DateField()
        price = models.DecimalField(max_digits=5, decimal_places=2)
    
        publish = models.ForeignKey(to="Publish", to_field="nid", on_delete=models.CASCADE)
    
        authors = models.ManyToManyField(to="Author")
    
    
    class Author(models.Model):
        nid = models.AutoField(primary_key=True)
        name = models.CharField(max_length=32)
        age = models.IntegerField()
        # 作者和作者信息一对一
        AuthorDetail=models.OneToOneField(to="AuthorDetail",on_delete=models.CASCADE)
    
    
    class AuthorDetail(models.Model):
        nid = models.AutoField(primary_key=True)
        # birthday = models.DateField()  # 特别是这一行进行注视后,就不会再提示 Python int too large to convert to C long  了
      # 或则将此行改为
      birthday = models.DateTimeField()
       tetephone = models.BigIntegerField()
        addr = models.CharField(max_length=64)
    
    
    class Publish(models.Model):
        nid = models.AutoField(primary_key=True)
        name = models.CharField(max_length=32)
        city = models.CharField(max_length=32)
        email = models.EmailField()
  • 相关阅读:
    Stack集合 Queue队列集合 Hashtable哈希表
    冒泡排序
    2017-3-1 数组
    2017-2-26 三大类知识
    2017-2-25 练习题总结
    2017-2-25 循环语句 跳转语句 迭代法 穷举法 异常语句
    2017-2-22 if语句 if语句的嵌套 以及课堂练习 经典猜拳游戏,闰年判断,输出当前时间的天数等
    2017-2-20 运算符
    2017-2-18 net 输入输出语句
    【Ebola】python day3
  • 原文地址:https://www.cnblogs.com/one-tom/p/12051545.html
Copyright © 2020-2023  润新知