Shi*_*ndi 22 python sqlite django
我是django框架的新手.
我尝试按照djangogirls教程创建一个简单的博客.
默认情况下,我们将sqlite3作为默认数据库引擎
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
Run Code Online (Sandbox Code Playgroud)
我也尝试了一些ORM查询,甚至执行了一些行sql查询
在我的django项目中,我有这个db.sqlite3文件
blog db.sqlite3 env manage.py mysite
Run Code Online (Sandbox Code Playgroud)
我的问题:如何知道django在这个db.sqlite3中创建的模式(我知道mysql,我可以看到有关每个数据库和表的详细信息,所以在这里我只想知道sqlite中的更多内容)
我的系统中有sqlite3,我尝试过.database命令,但它只显示了我
seq name file
--- --------------- ----------------------------------------------------------
0 main
Run Code Online (Sandbox Code Playgroud)
e4c*_*4c5 35
转到数据库所在的文件夹然后转到
sqlite3 db.sqlite3
Run Code Online (Sandbox Code Playgroud)
然后
.tables
Run Code Online (Sandbox Code Playgroud)
或.schema
取决于你想要什么.你可以直接调用sqlite3,而不是直接调用sqlite3
./manage.py dbshell
Run Code Online (Sandbox Code Playgroud)
然后键入sqlite命令.
小智 8
首先,运行以下命令:
python manage.py dbshell
Run Code Online (Sandbox Code Playgroud)
访问sqlite3命令行客户端如下所示:
然后,运行以下命令:
.table
Run Code Online (Sandbox Code Playgroud)
或者运行以下命令:
.tables
Run Code Online (Sandbox Code Playgroud)
显示SQLite中的所有表如下所示:
然后,运行以下命令:
.schema --indent store_product
Run Code Online (Sandbox Code Playgroud)
显示“store_product”表的架构,如下所示:
我已经绊倒了一个小时,目的是DESCRIBE
在 Django shell 中复制表,并认为我已经破解了它。我希望这对其他人有用。
在终端中 - 输入以下命令。
python3 manage.py dbshell
.tables
Run Code Online (Sandbox Code Playgroud)
找到您要查找的表的名称,然后运行以下命令:
.header on
.mode column
pragma table_info('table you are looking for');
Run Code Online (Sandbox Code Playgroud)
不要忘记最后一条指令中的分号。