django数据库查询

本文介绍了Django中使用sqlite3数据库的方法,包括直接引入和手动添加,并详细讲解了数据库的增、查、删、改操作。在增查操作中,提到了两种不同的实现方式。在查询时,强调了Query_set的惰性加载特性。对于删除和修改,文章提供了具体的操作示例。此外,还提及在复杂逻辑下可能需要使用原生SQL进行查询。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

预备知识

1.网站

动态:数据可以实现动态交互

静态:数据来源于页面,不容易修改,开发成本低

2.网站

前端:html    css     javascript    jquery    vue    Node.js    bootstrap    Angular    Ajax

后端:python    php    java    .net    mysql    Mongo    oracle    redis

前台:数据展示   用户交互

后台:数据管理  管理交互

3.博客

前台:展示文章

后台:添加文章,删除文章


1.django使用sqlite3数据库

第一种方法:直接拉过去

第二种方法:添加

在这个过程中可能出现sqlite驱动加载失败的情况,

解决办法请看:https://blog.youkuaiyun.com/g_optimistic/article/details/88956695

2.数据库操作语句

(1)增

有两种方法

方法一:利用实例化

方法二:调用objects的create方法

(2)查

Query_set惰性

我们使用query_set进行查询,没有进行遍历,排序等需要操作排序的元素的操作的时候,数据没有被实例化出来

如何将所有的数据进行前端渲染

1.查询数据,数据返回的是一个query_set对象或者单个数据

2.使用locals或者字典将数据添加到responses当中,然后传递给前端

3.query_set对象是一个有序序列,我们可以通过前端的方法进行调用

(3)删

删除单条数据

删除多条数据

(4)改

在工作当中,我们通常用orm的增删改查,在复杂的逻辑下还是用原生sql进行查询

views.py

showType.py

127.0.0.1:8000/showType

 

 

### Django 框架中的数据库使用指南 #### 配置数据库连接 为了使Django能够访问特定类型的数据库,`DATABASE_ENGINE` 设置告诉Django要使用的数据库引擎。如果在Django中使用数据库,则此参数必须设置为支持的值之一[^1]。 对于MySQL数据库的具体配置,在项目的 `settings.py` 文件里应包含如下所示的部分: ```python DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'your_database_name', # 替换为实际的数据库名称 'USER': 'your_username', # 替换为具有适当权限的用户名 'PASSWORD': 'your_password', # 用户对应的密码 'HOST': '', # 默认为空字符串表示localhost 'PORT': '', # 默认为空字符串表示默认端口 } } ``` 合理的配置不仅限于简单的连接信息设定;还需要考虑安全性与性能优化等方面的要求,以确保构建的应用既高效又安全[^4]。 #### 创建和管理模型 定义好数据库之后,就可以利用Django ORM(对象关系映射器)来操作数据表了。这通常涉及到创建Python类——即所谓的“模型”,这些模型对应着数据库里的表格结构。每一个属性代表一列字段,而整个类则描述了一张完整的记录表单。 例如,下面展示了一个简单的产品库存管理系统可能用到的商品模型定义方式: ```python from django.db import models class Product(models.Model): name = models.CharField(max_length=200) description = models.TextField() price = models.DecimalField(decimal_places=2, max_digits=8) def __str__(self): return self.name ``` 上述代码片段展示了如何基于Django框架建立一个商品实体及其相关联的数据域[^3]。 #### 执行迁移命令同步更改至数据库 每当修改或新增任何模型时,都需要执行相应的迁移指令以便让改动生效。这是通过运行以下两条终端命令完成的: ```bash python manage.py makemigrations python manage.py migrate ``` 第一条命令会自动生成必要的SQL语句文件,第二条则是真正地把这些变更应用到了目标数据库上[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值