Django 浅谈根据配置生成SQL语句的问题

作者:程序员小熊 时间:2023-05-10 07:48:23 

想要根据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

标签:Django,生成,SQL
0
投稿

猜你喜欢

  • 详解Python垃圾回收机制和常量池的验证

    2022-12-28 09:58:29
  • python打印n位数“水仙花数”(实例代码)

    2021-06-11 20:35:36
  • JavaScript函数的调用以及参数传递

    2024-04-18 10:32:30
  • CSS设计之如何让数字字母自动换行

    2007-10-19 15:12:00
  • numpy实现神经网络反向传播算法的步骤

    2021-02-11 10:54:34
  • 对vue2.0中.vue文件页面跳转之.$router.push的用法详解

    2024-04-30 10:35:03
  • python try...finally...的实现方法

    2022-09-27 06:34:35
  • ASP不允许同一个用户同时登陆两次

    2008-06-03 13:45:00
  • 网易2016研发工程师编程题 奖学金(python)

    2021-11-21 19:37:54
  • django使用haystack调用Elasticsearch实现索引搜索

    2021-07-22 17:13:27
  • 关于Python网络爬虫框架scrapy

    2023-03-17 17:02:50
  • Web标准基础教程:CSS简写指南

    2010-04-02 12:47:00
  • 终于搞懂了Python中super(XXXX, self).__init__()的作用了

    2022-01-04 00:35:44
  • 解决TensorFlow程序无限制占用GPU的方法

    2021-11-22 13:13:44
  • sqlserver存储过程语法详解

    2024-01-21 04:43:53
  • Flask框架利用Echarts实现绘制图形

    2023-01-08 11:52:42
  • python中pygame针对游戏窗口的显示方法实例分析(附源码)

    2022-04-27 11:35:12
  • python如何创建TCP服务端和客户端

    2021-05-20 04:52:52
  • Python实现统计代码行的方法分析

    2023-10-15 13:08:44
  • 利用location.hash实现跨域iframe自适应高宽

    2009-08-02 20:31:00
  • asp之家 网络编程 m.aspxhome.com