为什么我可以将无效数据插入数据库? [重复]

问题描述 投票:0回答:0

这是我的 models.py 文件:

from django.db import models

# Create your models here.

class FxRates(models.Model):
    business_date = models.DateField()
    country = models.CharField(max_length=1000)
    currency_code = models.CharField(max_length=3)
    exchange_rate = models.FloatField()

    class Meta:
        db_table = "FxRates"

使用“迁移”命令,我可以在 db.sqlite3 中创建 FxRates 数据库表。

现在,如果我使用 Pandas 将数据插入该数据库,如果我的 data.csv 文件中的这一行没有错误:

24/01/2023,Bangladesh,BDT,ERR! 

考虑到 ERR,这不应该是不可能插入的吗!不是数字吗?

我使用的 Pandas 命令是:

df = pandas.read_csv("/home/data.csv")
database_path = "<path_to_db.sqlite3>"
connection = sqlite3.connect(database_path)

df.to_sql("FxRates", connection, if_exists= "append", index=False)

这样可以很好地插入所有数据,但为什么会插入无效数据?

django pandas sqlite django-models
© www.soinside.com 2019 - 2024. All rights reserved.