【记录】Django数据库的基础操作

 数据库连接

在Django中使用 mysqlclient 这个包用于数据库的连接,切换至 Django环境中直接

pip install mysqlclient 

安装此包

 1 数据库连接配置

在项目目录下的setting.py中配置

DATABASES = {'default': {'ENGINE': 'django.db.backends.mysql','NAME': 'mini',#数据库名'USER': 'ro',#用户名'HOST': 'localhost',#服务器IP'PORT': '3306',33端口号'PASSWORD': '1456',#密码'OPTIONS': {'charset': 'utf8mb4'},}
}

2 定义Models 

注意书写过程中需要保证缩进,不要在某一行后加 逗号等标点符号

from django.db import models# Create your models here.
#创建数据库中的表 
#数据库需要先创建好 因为 mysqlclient 这个包只能创建表 不能创建数据库
#表名:ai_imgdetail
class ImgDetail(models.Model):#图片的idimgId = models.BigIntegerField()#上传时间timeStamp = models.DateTimeField()#校验时间validateTime = models.DateTimeField()#经度longitude = models.FloatField()longitudeRef = models.CharField(max_length=2)#纬度latitude = models.FloatField()latitudeRef = models.CharField(max_length=2)#海拔altitude = models.FloatField()altitudeRef = models.CharField(max_length=32)

3 运行 

切换至项目根目录下,打开命令行,运行

python .\manage.py makemigrations

此命令后,会在项目根目录下生成migratons文件夹

然后运行表生成命令

 python .\manage.py migrate       

上述命令结束后,数据库中会生成创建好的数据表,但是会包含很多其他的表:

这个主要是在 Django的根目录下(setting.py)文件中包含下面的内容

如果上述命令在数据库中形成的表不对,则需要将 app文件夹中的 001_initial.py删除,重新运行上述两个命令。

4 表格或列删除

直接将models.py中的类注释,或某列名注释,再运行上述的命令即可。

5 已有表格添加新列

由于已有表格中有数据,当添加新列时,需要指定列的默认值。两种方法:

5.1 直接使用命令,会出现下面的提示

5.2 程序中直接添加
altitude = models.FloatField(default=0.1)
或
altitude = models.FloatField(null=True,blank=True)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/56351.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Tips--解决更新resource.qrc之后新的资源无法加载的问题

解决更新resource.qrc之后新的资源无法加载的问题 问题原因解决方法 问题 在使用pyQT或者pyside开发桌面程序的时候&#xff0c;resource.qrc是整合资源文件的地方&#xff0c;如下所示 <!DOCTYPE RCC><RCC version"1.0"> <qresource><file&g…

uniapp修改input中placeholder样式

Uniapp官方提供了两种修改的属性方法&#xff0c;但经过测试&#xff0c;只有 placeholder-class 属性能够生效 <input placeholder"请输入手机验证码" placeholder-class"input-placeholder"/><!-- css --> <style lang"scss" s…

Vue--绑定class样式

有三种方式&#xff1a; 1、字符串写法(freeA) 适用于&#xff1a;样式的类名不确定&#xff0c;需要动态指定 2、数组写法(freeB) 适用于&#xff1a;要绑定的样式个数不确定&#xff0c;名字也不确定 3、对象写法(freeC) 适用于&#xff1a;要绑定的样式个数确定&#xff0c…

Python的买家秀大揭秘:用代码点亮API数据

在一个充满无限可能的数字世界里&#xff0c;Python侦探正准备开始他的新任务&#xff1a;揭开买家秀API数据的神秘面纱。这不仅是一次技术的挑战&#xff0c;更是一次与时间赛跑的较量。Python侦探&#xff0c;这位编程界的福尔摩斯&#xff0c;打开了他的笔记本电脑&#xff…

sealed class-kotlin中的封闭类

在 Kotlin 中&#xff0c;sealed class&#xff08;密封类&#xff09;是一种特殊的类&#xff0c;用于限制继承的类的数量。密封类可以被用来表示一组有限的类型&#xff0c;通常用于状态管理或表达多种可能的错误类型。 密封类用 sealed 关键字定义&#xff0c;这意味着只能…

matlab怎样自动搜索文件夹中的所有txt文件,并将每个txt文件中的数据存放到一个cell数组中——MATLAB批量处理数据

在使用MATLAB批量处理数据时&#xff0c;有时候需要自动搜索文件夹中的所有txt文件&#xff0c;并将每个txt文件中的数据存放到一个以一定规律命名的变量中&#xff0c;以便于后续通过循环处理每个变量数据。 然而&#xff0c;MATLAB并不支持在变量名中直接使用i来动态生成变量…

Unity发送Http

本篇实现在Unity中发送Http请求。 讲解Get&#xff0c;Post&#xff0c;用于在Unity中进行数据对接。 一、Get IEnumerator Get() {string url "";//链接UnityWebRequest request UnityWebRequest.Get(url);//创建UnityWebRequest实例并设置请求方式为Getyield …

Flutter 中的 PopScope 小部件:全面指南

Flutter 中的 PopScope 小部件&#xff1a;全面指南 在 Flutter 应用开发中&#xff0c;导航和路由管理是构建复杂应用时必须面对的挑战之一。PopScope 小部件是 Flutter 2.0 版本引入的一个新功能&#xff0c;它提供了一种更灵活的方式来控制页面的弹出和返回行为。本文将带你…

OpenCV高级图形用户界面(9)更改指定窗口的位置函数moveWindow()的使用

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 将窗口移动到指定的位置。 cv::moveWindow() 函数用于更改指定窗口的位置。你可以使用这个函数来移动窗口到屏幕上的任何位置。 函数原型 void …

C++大坑之——多继承(菱形继承)

文章目录 前言一、多继承是什么&#xff1f;1. 多继承概念2. 多继承语法 二、菱形继承1. 为什么会有菱形继承问题&#xff1f;2. 代码感受菱形继承3. 虚拟继承1&#xff09;虚拟继承概念及语法2&#xff09;虚拟继承的原理 4. 为什么要有虚基表&#xff1f;5. 为什么要有偏移量…

bootloader跳转app卡死(IAP卡死)

1、 关闭所有中断再跳转APP 一般bootloader跳转到APP时要关闭app中用到的中断(防止中断打断程序的运行&#xff0c;导致程序跑飞&#xff09;&#xff0c;那么查看系统中用到的中断&#xff1a;串口中断、滴答定时器中断&#xff0c;所以&#xff0c;跳转之前要关闭这两个中断&…

Vlan和Trunk

VLAN的定义 虚拟局域网&#xff0c;用来在二层网络中隔离广播域不同VLAN的设备在二层网络中无法互相通讯&#xff08;二层隔离技术&#xff09; VLAN的转发过程举例 源MAC字段后加上VLAN TAG字段&#xff0c;其中VLAN ID用来标识VLAN。 PC发送数据帧进入交换机&#xff0c;会…

使用SearXNG-搭建个人搜索引擎(附国内可用Docker镜像源)

介绍 SearXNG是聚合了七十多种搜索服务的开源搜索工具。我们可以匿名浏览页面&#xff0c;不会被记录和追踪。作为开发者&#xff0c;SearXNG也提供了清晰的API接口以及完整的开发文档。 部署 我们可以很方便地使用Docker和Docker compose部署SearXNG。下面给出Docker部署Se…

vscode插件live server无法在手机预览调试H5网页

环境 Window10、vscode&#xff1a;1.94.2、Live Server&#xff1a;v5.7.9、Live Server (Five Server)&#xff1a;v0.3.1 问题 PC端预览没有问题&#xff0c;但是在手机点击链接显示访问失败 排查 1. 是否同一局域网 意思就是电脑、手机是不是访问同一个网络。电脑插得…

微信互助学习平台(lw+演示+源码+运行)

摘要 随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统的实施在技术上已逐步成熟。本文介绍了微信互助学习平台的开发全过程。通过分析微信互助学习平台管理的不足&#xff0c;创建了一个计算机管理微信互助学习平台的方案。文章介绍了微信互助学习平台的…

performance.timing

performance.timing 是 Web 性能 API 的一部分&#xff0c;用于获取页面加载过程中的各个时间戳。这些时间戳可以帮助开发者分析页面加载性能&#xff0c;找出潜在的瓶颈。performance.timing 返回一个 PerformanceTiming 对象&#xff0c;该对象包含了多个属性&#xff0c;每个…

论文精读:TiC-CLIP: Continual Training of CLIP Models(一)

论文精读&#xff1a;TiC-CLIP: Continual Training of CLIP Models&#xff08;一) 论文介绍 在多模态学习领域&#xff0c;CLIP&#xff08;Contrastive Language-Image Pre-training&#xff09;模型因其在图像和文本联合嵌入方面的卓越性能而受到广泛关注。然而&#xff0…

【C++】vector(1)

&#x1f608;个人主页: 起名字真南 &#x1f608;个人专栏:【数据结构初阶】 【C语言】 【C】 目录 引言1 vector 的基本知识1.1 vector 的特点 2 vector 的主要功能和操作2.1 vector 的构造2.2 vector 的增删改查2.3 vector 的容量 引言 在C的标准模板库&#xff08;STL&…

MySQL——数据库

什么是数据库 数据库&#xff08;DB , DataBase&#xff09;概念&#xff1a;数据仓库&#xff0c;软件&#xff0c;安装在操作系统&#xff08;window&#xff0c;linux&#xff0c;max&#xff0c;...&#xff09;之上学习数据库最重要的就是学习SQL语句存储500万以下的数据…

鸿蒙HarmonyOS————ArkTs介绍(1)

最近除了人工智能&#xff0c;还有一个很火的HarmonyOS&#xff0c;HarmonyOS是华为公司开发的一款面向全场景的分布式操作系统&#xff0c;旨在为消费者提供跨设备无缝协同体验。它支持多种智能终端设备&#xff0c;包括但不限于智能手机、平板电脑、智能穿戴设备、智能家居设…