Django 数据库ORM操作 - 单表的创建,增加,删除,更改和查询
发表于:2025-01-21 作者:千家信息网编辑
千家信息网最后更新 2025年01月21日,Django里面,管理数据库和sqlarchemy类似,也是通过orm框架来实现的。所有的数据库的建立,都是在model.py里面通过类来实现的。首先看看如何创建一个单表:a. 先定义一个类,继承mo
千家信息网最后更新 2025年01月21日Django 数据库ORM操作 - 单表的创建,增加,删除,更改和查询
Django里面,管理数据库和sqlarchemy类似,也是通过orm框架来实现的。所有的数据库的建立,都是在model.py里面通过类来实现的。
首先看看如何创建一个单表:
a. 先定义一个类,继承models.Model, 然后根据需求定义参数,这些参数的类型和变量后面会进一步阐述
models.py
from django.db import modelsclass UserInfo(models.Model): username = models.CharField(max_length=32) password = models.CharField(max_length=64)
b. 注册app
settings.py
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'app01',]
c.执行命令。 第一条命令会生成一个初始化文件,第二个命令会生成对应的表
python manage.py makemigrationspython manage.py migrate
这样,就在PyCharm自带的sqlite数据库里面成功的生成了一个app01_UserInfo的表。这个表默认会有一个自增的id作为主键,另外两个字段是我们通过类创建的。
d. 如果希望使用mysql,因为Django默认使用了MySqldb模块,这个在3.0版本里面不存在,会直接报错。我们需要改为pymysql的模块,方法如下:
在project同名文件夹下的__init__文件中添加如下代码即可:
import pymysql
pymysql.install_as_MySQLdb()
2. 对于单表的增删改查询
查询
获取所有结果,获取到的结果是一个QuerySet的类似列表的对象,每一个元素本身又是一个对象,包括了id,name,password等属性。
obj = models.UserInfo.objects.all()
可以通过filter进行过滤,相当于sql的where语句,因为结果也是QuerySet,因此需要再使用first()获取第一个值
obj = models.UserInfo.objects.filter(id=nid).first()
增加
models.UserInfo.objects.create(username=u,password=p,user_group_id=3)
删除,可以在filter的基础上进行删除
models.UserInfo.objects.filter(id=nid).delete()
修改,有两种常见方式
第一个方式
models.UserInfo.objects.filter(id=nid).update(username=u,password=p)
第二个方式
obj=models.UserInfo.objects.filter(id=nid)obj.username=uobj.save()
数据
数据库
命令
文件
方式
结果
生成
查询
参数
对象
模块
成功
两个
代码
元素
又是
变量
可以通过
基础
字段
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
word自动引入数据库
数据库管理系统怎么分类
软件开发排期图
茂名定制化精益软件开发
360互联网重大科技成果
简并度和能级数据库
济南莱芜做软件开发公司电话
罗湖区光纤网络技术开发动态
幼儿园网络安全宣传周宣传片
ict软件开发招聘
ad域控服务器硬件
大一网络技术补考是上机操作吗
数据库读取年月日
数据库安全模型属性加密
宁波定制app软件开发
邮政数据库招聘
轻骑兵软件在软件开发行业排名
服务器网络搭建是什么工作
田径比赛视频软件开发
tplink存储服务器
spss服务器部署
国家网络安全管理小组成员
交通媒体交换服务器图片
苏康码服务器部署在哪
4g代理服务器
阿坝州网络安全委员会
数据库如何连接超时异常
落实网络安全情况
灵活用工平台服务器要求
腾讯云服务器在桌面设置链接教程