1

我目前正在阅读Django 的权威指南,遇到了一个意外错误。我将我的数据库设置为 sqlite3 并对其进行了测试。到目前为止,一切都很好。

首先,我使用以下命令创建了一个应用程序,

python manage.py startapp books

然后我创建了相应的模型

从 django.db 导入模型

class Publisher(models.Model):
    name = models.CharField(max_length=30)
    address = models.CharField(max_length=50)
    city = models.CharField(max_length=60)
    state_province = models.CharField(max_length=30)
    country = models.CharField(max_length=50)
    website = models.URLField()

class Author(models.Model):
    first_name = models.CharField(max_length=30)
    last_name = models.CharField(max_length=40)
    email = models.EmailField()

class Book(models.Model):
    title = models.CharField(max_length=100)
    authors = models.ManyToManyField(Author)
    publisher = models.ForeignKey(Publisher)
    publication_date = models.DateField()

我可以成功验证它,

python manage.py validate

但是当我尝试打印出相应的 SQL 命令时,

 python manage.py sqlall books

我收到以下错误:

django.db.utils.DatabaseError: file is encrypted or is not a database

我错过了什么?

提前致谢

我的设置是:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': '/home/******/mysite/mysite/data/test.db',
        'USER': '',                      # Not used with sqlite3.
        'PASSWORD': '',                  # Not used with sqlite3.
        'HOST': '',                      
        'PORT': '',
    }
}
4

0 回答 0