【问题标题】:Converting sqlite3 database to postgresql in Django [duplicate]在Django中将sqlite3数据库转换为postgresql [重复]
【发布时间】:2015-10-19 03:53:42
【问题描述】:

在我的 models.py 文件中,我有:

class Book(models.Model):
    weeks_list = models.TextField(max_length=1000)

在我的 settings.py 文件中,我有:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'db_name',                      
        'USER': 'user',
        'PASSWORD': 'password',
        'HOST': 'localhost',
        'PORT': '',
    }
}

我一直在使用带有一个名为 db.sqlite3 的文件的 sqlite3。我想切换到postgresql。当我尝试 syncdb 时,我收到以下错误:

psycopg2.ProgrammingError: column "weeks_list" cannot be cast automatically to type date

HINT:  You might need to specify "USING weeks_list::date".

我不知道该怎么办。

【问题讨论】:

    标签: python django postgresql sqlite


    【解决方案1】:

    转到this.resolved问题

    alter table "foo" alter column "date" type date using ("date"::text::date);
    

    【讨论】:

    • 如下?:alter table "db_name" alter column "weeks_list" type date using ("weeks_list"::text::date); 我应该在哪里输入这个?
    • 在 postgresql 命令中输入此命令。为了访问命令,我认为必须输入命令行 psql。我不使用postgresql。你可以搜索“postgresql命令行”
    • 我收到ERROR: relation "db_name" does not exist。我尝试创建一个新数据库并再次执行此操作,但仍然出现同样的错误。
    • 我还是很迷茫。我已经从我的 models.py 中注释掉了 weeks_list,当我尝试迁移时,我仍然收到我一开始发布的错误。
    猜你喜欢
    • 2016-06-22
    • 2012-06-21
    • 2021-05-21
    • 2010-09-11
    • 1970-01-01
    • 2013-12-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多