Django 浅谈根据配置生成SQL语句的问题
作者:程序员小熊 发布时间:2023-05-10 07:48:23
标签:Django,生成,SQL
想要根据django中的模型和配置生成SQL语句,需要先进行一定的设置:
首先需要在你的app文件夹中进入setting.py文件,里面有一个DATABASES,进行设置数据库的配置信息:
DATABASES = {
'default': {
# 'ENGINE': 'django.db.backends.sqlite3',
# 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
'ENGINE': 'django.db.backends.mysql',
'NAME': '你的数据库的名字',
'USER': '用户名',
'PASSWORD': '密码',
'HOST': '',
'PORT': '3306',
}
接下来需要将你的app激活,同样是在setting.py文件中,有一个INSTALLED_APPS,将你的app添加到末尾,
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'你的app的名字',
]
定义并激活了模型,接下来验证模型是否有效,在之前的版本中验证是否有效的命令是python manage.py validate
如果你的Django的版本比较新的话(我的是1.10)可能会出现错误提示:
Unknown command: ‘validate‘
Type ‘manage.py help‘ for usage.
那么新版本的验证命令是python manage.py check
在我们验证通过之后就可以生成SQL语句了,你之前可能需要编写一下model.py中的一些内容,之后想生成SQL语句时,
之前的版本的命令是python manage.py sqlall ***(你的app的名字)
版本不匹配时,会出现错误提示:
Unknown command: ‘sqlall‘
Type ‘manage.py help‘ for usage.
同样如果你想提交sql语句到数据库而运行syncdb,错误提示是:
Unknown command: ‘syncdb‘
Type ‘manage.py help‘ for usage.
目前的较新版本的django的命令是:
python manage.py makemigrations books #用来检测数据库变更和生成数据库迁移文件
python manage.py migrate #用来迁移数据库
python manage.py sqlmigrate books 0001 # 用来把数据库迁移文件转换成数据库语言
在命令行依次执行完这三个命令你就可以进行数据访问了。
来源:https://blog.csdn.net/xiongchun11/article/details/60468279


猜你喜欢
- 利用python+ffmpeg合并B站视频及格式转换 B站客户端下载的视频一般有两种格式:早期的多为blv格式(由flv格式转换而来,音视频
- 最近在作图时需要将输出的图片紧密排布,还要去掉坐标轴,同时设置输出图片大小。要让程序自动将图表保存到文件中,代码为:plt.savefig(
- 在日常的工作中,有时候会有这样的需求,需要一个常驻任务,持续的监听一个目录下文件的变化,对此作出回应.pyinotify就是这样的一个pyt
- 代码如下dat=['1', '2', '3', '0', '0
- 具体错误:UnicodeEncodeError: 'latin-1' codec can't encode char
- 本文实例为大家分享了python实现单链表反转的具体代码,供大家参考,具体内容如下代码如下:class Node(object): 
- 转PDF初始代码从文件夹中读取图片数据,然后将他们保存为PDF格式。不长,大概10行代码。from PIL import Imagefrom
- PyQt5相关安装python 版本 python 3.6.31、安装PyQt5执行命令: pip install pyqt52、安装PyQ
- 基于Vue的页面切换左右滑动效果,具体内容如下HTML文本页面:<template> <div id="app&
- 这是一个很长的故事,嫌长的直接看最后的结论事情经过上周接了个需求,写了个小工具给客户,他要求打包成exe文件,这当然不是什么难事。因为除了写
- 最近一个开发需求中要求用pandas实现该需求:逐行对比两列,选出每行两列中较大的值加到第三列翻了下好像没有类似的函数,所以没办法要自己造轮
- 我将示范微优化(micro optimization)如何提升python代码5%的执行速度。5%!同时也会触怒任何维护你代码的人。但实际上
- 最近一句话后门不断升级大家注意防范,基本上多事字符替换过护卫神PHP一句话作者:小东 <?php $a = str_replace(x
- 前言tips:第一次发技术文章,篇幅比较简短,主要采取文字和关键代码表现的形式,希望帮助到大家。(若有不正确还请多多指正)nextTick作
- 一、数据库基础用法要先配置环境变量,然后cmd安装:pip install pymysql1、连接MySQL,并创建wzg库#引入decim
- 1.新建一个django项目,2.前端展示一个按钮<form action="/start/" method=&q
- 本文实例讲述了codeigniter发送邮件并打印调试信息的方法。分享给大家供大家参考。具体如下:这里的codeigniter代码实现发送邮
- 一、什么是主键、外键: 关系型数据库中的一条记录中有若干个属性,若其中某一个属性组(注意是组)能唯一标识一条记录,该属性组就可以成为一个主键
- 保证只能运行一个脚本实例,方法是程序运行时监听一个特定端口,如果失败则说明已经有实例在跑。使用装饰器实现,便于重用import functo
- 一、数据引擎简介在MySQL 5.1中,MySQL AB引入了新的插件式存储引擎体系结构,允许将存储引擎加载到正在运新的MySQL