Django 数据库ORM操作 - 单表的创建,增加,删除,更改和查询
发表于:2024-10-05 作者:千家信息网编辑
千家信息网最后更新 2024年10月05日,Django里面,管理数据库和sqlarchemy类似,也是通过orm框架来实现的。所有的数据库的建立,都是在model.py里面通过类来实现的。首先看看如何创建一个单表:a. 先定义一个类,继承mo
千家信息网最后更新 2024年10月05日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安全错误
数据库的锁怎样保障安全
pc服务器功率
手机忽然连接不上服务器
关于网络安全的短语50字
企业级数据库应用与开发
阎锡山日记软件开发
丽江提升网络安全技术收费标准
杭州软件开发培训哪里好
合4的数据库
智慧校园网络技术
消防部队网络安全ppt课件
计算机软件开发哪个大学好
修改 禁用流量数据库
时尚品幼网络技术有限公司
安卓软件开发天气预报实训报告
全球网络安全趋势
滴滴会有手机服务器吗
常州品牌网络技术服务费
数据库中用于表示实体的
昊天软件开发公司服务电话
安徽大学数据库原理参考用书
服务器网页打不开
喀喇沁旗网络安全
网络安全ca是什么意思
每个数据库有且只有一个
中小学家庭教育与网络安全完
合肥同达成互联网科技
七日杀加入不了好友服务器怎么办
桌面软件开发直播
水星路由器手动设置DNS服务器
数据库中用于表示实体的