【问题标题】:How to view database and schema of django sqlite3 db如何查看 django sqlite3 db 的数据库和模式
【发布时间】:2017-07-02 20:07:56
【问题描述】:

我是 django 框架的新手。

我尝试按照 djangogirls 教程创建一个简单的博客。

这里默认使用 sqlite3 作为默认数据库引擎

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}

我也尝试了一些ORM queries,甚至performed some row sql queries

在我的 django 项目中,我有这个 db.sqlite3 文件

blog  db.sqlite3  env  manage.py  mysite

我的问题:如何知道 django 在这个 db.sqlite3 中创建的架构(我知道 mysql 在那里我可以看到每个数据库和表的详细信息,所以在这里我只想知道更多的东西在sqlite中)

我的系统中有 sqlite3,我尝试了 .database 命令,但它只是显示给我

seq  name             file                                                      
---  ---------------  ----------------------------------------------------------
0    main 

【问题讨论】:

  • 你试过.schema吗?
  • 是的,它显示为空白。试过 .help 和所有命令也

标签: python django sqlite


【解决方案1】:

转到数据库所在的文件夹,然后

sqlite3  db.sqlite3

然后

.tables

或 .schema

取决于你想要什么。而不是直接调用 sqlite3 你可以这样做

 python manage.py dbshell 

然后输入 sqlite 命令。

如果您使用的是旧数据库,则可以使用 Django 模型为该数据库生成

 python manage.py inspectdb

请参阅https://docs.djangoproject.com/en/3.0/ref/django-admin/#django-admin-inspectdb 了解更多信息。

但是请帮自己一个忙,并获得一个 GUI 数据库客户端。有了它,生活就轻松多了。

【讨论】:

  • 嗯,是的,这一切都假设您的系统上有 sqlite3 可用
  • sqlite3 与django 一起安装。
【解决方案2】:

您可以使用以下命令获取创建的数据库的sql脚本。

python manage.py sqlmigrate app_label migration_name

【讨论】:

    【解决方案3】:

    您可以在线查看您的 db.sqlite 文件。
    sqlite Online

    只需将您的文件上传到那里,您就可以看到您的 db.sqlite 文件中的表。

    【讨论】:

    • 我的文件打不开
    【解决方案4】:

    为了在 Django shell 中复制 DESCRIBE 表,我已经跌跌撞撞了一个小时,并认为我已经破解了它。 我希望这对其他人有用。

    在终端中 - 输入以下命令。

    python3 manage.py dbshell
    .tables
    

    找到您要查找的表的名称,然后运行以下命令:

    .header on
    .mode column
    pragma table_info('table you are looking for');
    

    不要忘记最后一条指令中的分号。

    【讨论】:

      【解决方案5】:

      只是想补充一点,有人可以在 my_project_name>my_app_name>migrations 下找到迁移,通常您会选择编号最大的迁移。

      那么命令应该是这样的:python manage.py sqlmigrate my_app_name number

      【讨论】:

        猜你喜欢
        • 2011-06-06
        • 1970-01-01
        • 2010-12-25
        • 2021-09-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多