当前位置: 首页 > news >正文

【记录】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)

相关文章:

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

数据库连接 在Django中使用 mysqlclient 这个包用于数据库的连接,切换至 Django环境中直接 pip install mysqlclient 安装此包 1 数据库连接配置 在项目目录下的setting.py中配置 DATABASES {default: {ENGINE: django.db.backends.mysql,NAME: mini,#数据库名US…...

XHCI 1.2b 规范摘要(五)

系列文章目录 XHCI 1.2b 规范摘要(一) XHCI 1.2b 规范摘要(二) XHCI 1.2b 规范摘要(三) XHCI 1.2b 规范摘要(四) XHCI 1.2b 规范摘要(五) 文章目录 系列文章目…...

小程序短链接生成教程

文章目录 一、小程序短链接(必须发布正式的小程序才能生成短链接!!!)二、使用步骤1.获取token信息2.获取短链接 总结 一、小程序短链接(必须发布正式的小程序才能生成短链接!!&#…...

C++进阶之路:再谈构造函数、static成员、友元(类与对象_下篇)

✨✨ 欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭❤~✨✨ 🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua小谢,在这里我会分享我的知识和经验。&am…...

C 函数指针与回调函数

C 函数指针与回调函数 在C语言中,函数指针和回调函数是两个非常强大的概念,它们在提高代码的灵活性和模块化方面发挥着重要作用。本文将详细介绍C语言中的函数指针和回调函数,包括它们的定义、用法和实际应用场景。 函数指针 定义 函数指…...

CTF(九)

导言&#xff1a; 本文主要讲述在CTF竞赛网鼎杯中&#xff0c;web类题目AreUSerialz。 靶场链接&#xff1a;BUUCTF在线评测 一&#xff0c;分析代码。 看到了一大段php代码。 <?php// 引入flag.php文件 include("flag.php");// 高亮显示当前文件 highlight…...

三种单例实现

1、不继承Mono的单例 实现 使用 注&#xff1a; 使用需要继承BaseManager 泛型填写自己本身 需要实现无参构造函数 2、挂载式的Mono单例 实现 使用 注&#xff1a; 使用需要继承SingletonMono 泛型填写自己本身 需要挂载在unity引擎面板 3、不用挂载式的单例 实现 使…...

Spring XML配置方式和Spring Boot注解方式的详细对照关系

功能/配置项Spring XML配置方式Spring Boot注解方式定义Beanxml <bean id"myBean" class"com.example.MyBean"/>javaBeanpublic MyBean myBean() { return new MyBean(); }注入Beanxml <bean id"myBean" class"com.example.MyBea…...

leetcode 无重复字符串的排列和组合

1.题目要求: 2.题目代码&#xff1a; class Solution { public:vector<string> result;string str;//利用回溯去解决此问题void backtricking(string S,vector<bool>& used){if(str.size() S.size()){result.push_back(str);}//用used去掉重复的排列与组合f…...

7. 配置

三种获取配置的方法 返回 /config/config.php 、/config/autoload/xxx.php 中的值 <?php namespace App\Controller;use Hyperf\Config\Annotation\Value; use Hyperf\Contract\ConfigInterface; use Hyperf\Di\Annotation\Inject; use Hyperf\HttpServer\Annotation\AutoC…...

WPF中Grid、StackPanel、Canvas、WrapPanel的区别

WPF 中的 Grid、StackPanel、Canvas 和 WrapPanel 都是布局控件&#xff0c;用于在用户界面中组织和排列元素&#xff0c;但它们各自有不同的布局行为和用途。以下是它们的主要区别&#xff1a; Grid&#xff1a; Grid 是最灵活的布局控件&#xff0c;类似于 HTML 中的表格&…...

昇思MindSpore进阶教程--开发常见问题

大家好&#xff0c;我是刘明&#xff0c;明志科技创始人&#xff0c;华为昇思MindSpore布道师。 技术上主攻前端开发、鸿蒙开发和AI算法研究。 努力为大家带来持续的技术分享&#xff0c;如果你也喜欢我的文章&#xff0c;就点个关注吧 MindSpore官网提供了一份在使用MindSpore…...

【Linux】Linux进程地址空间

1.程序地址空间分配回顾 在前⾯C语⾔以及C部分介绍过⼆者的内存分配如下图所示&#xff1a; 全局变量区和未初始化全局变量区也被称为数据区&#xff0c;数据区中除了有全局变 量&#xff0c;还有静态变量和常量 使⽤下⾯的代码演示不同的内容所处的地址&#xff1a; #includ…...

创建包含可导入浏览器信任的SSL自签名证书

问题&#xff1a;现在的三大浏览器&#xff0c;chrome、edge、firefox 一般都默认启用https检查&#xff0c;这就要求我们自建的局域网内的网址和其他诸如nextcloud、photoprism、tiddlywiki等应用也必须要有证书。解决方法是使用openssl自己生成一个。由此则会再衍生出一个问题…...

[Windows] 很火的开源桌面美化工具 Seelen UI v2.0.2

最近&#xff0c;一款来自Github的开源桌面美化工具突然在网上火了起来&#xff0c;引发了大家的关注&#xff0c;不少小伙伴纷纷开始折腾了起来。而折腾的目的&#xff0c;无非是为了一点点乐趣而已&#xff0c;至于结果如何&#xff0c;并不是最要紧的&#xff0c;反倒是体验…...

华帝携手抖音头部达人,金牌导演李力持量身打造厨电定制微短剧

10月21日&#xff0c;由华帝独家冠名&#xff0c;金牌导演李力持执导&#xff0c;抖音头部达人逆袭丁姐领衔主演&#xff0c;ATV亚洲电视、知行易达、抖音商城联合出品的24集现代家庭治愈美食定制微短剧《女厨神》上线抖音。 该剧讲述了热爱生活和美食的丁姐&#xff0c;为了家…...

监控易监测对象及指标之:JBoss 7.1.x中间件监控

监控易是一款功能全面的监控软件&#xff0c;能够实时追踪和分析各类IT资源的性能数据&#xff0c;提供及时的故障预警和性能报告。本文将对监控易针对JBoss 7.1.x中间件的监控指标进行深入解读&#xff0c;以帮助用户更好地理解和应用这些数据。 JBoss 7.1.x作为一款广泛使用的…...

Java 模拟退火算法

模拟退火算法&#xff08;Simulated Annealing, SA&#xff09;是一种用于全局优化的启发式搜索算法&#xff0c;它模仿了物理学中金属退火的过程。该算法在搜索空间中逐步降低“温度”&#xff0c;以寻找全局最优解。下面是一个用Java实现模拟退火算法的简单示例。 假设我们要…...

LeetCode[中等] 80. 删除有序数组中的重复项 II

给你一个有序数组 nums &#xff0c;请你 原地 删除重复出现的元素&#xff0c;使得出现次数超过两次的元素只出现两次 &#xff0c;返回删除后数组的新长度。 不要使用额外的数组空间&#xff0c;你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。 public cl…...

机器学习5

1.1 决策树的定义 决策树是用于分类和回归的机器学习算法。它通过一系列的“是或否”的决策来分类数据。每个决策是基于数据的某个属性进行的&#xff0c;如“色泽是青绿吗&#xff1f;”。决策树的核心是通过树状结构&#xff0c;将一个复杂的问题逐步拆解为多个简单的二元问…...

在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module

1、为什么要修改 CONNECT 报文&#xff1f; 多租户隔离&#xff1a;自动为接入设备追加租户前缀&#xff0c;后端按 ClientID 拆分队列。零代码鉴权&#xff1a;将入站用户名替换为 OAuth Access-Token&#xff0c;后端 Broker 统一校验。灰度发布&#xff1a;根据 IP/地理位写…...

macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用

文章目录 问题现象问题原因解决办法 问题现象 macOS启动台&#xff08;Launchpad&#xff09;多出来了&#xff1a;Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显&#xff0c;都是Google家的办公全家桶。这些应用并不是通过独立安装的…...

Neo4j 集群管理:原理、技术与最佳实践深度解析

Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...

【HTML-16】深入理解HTML中的块元素与行内元素

HTML元素根据其显示特性可以分为两大类&#xff1a;块元素(Block-level Elements)和行内元素(Inline Elements)。理解这两者的区别对于构建良好的网页布局至关重要。本文将全面解析这两种元素的特性、区别以及实际应用场景。 1. 块元素(Block-level Elements) 1.1 基本特性 …...

涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战

“&#x1f916;手搓TuyaAI语音指令 &#x1f60d;秒变表情包大师&#xff0c;让萌系Otto机器人&#x1f525;玩出智能新花样&#xff01;开整&#xff01;” &#x1f916; Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制&#xff08;TuyaAI…...

算法笔记2

1.字符串拼接最好用StringBuilder&#xff0c;不用String 2.创建List<>类型的数组并创建内存 List arr[] new ArrayList[26]; Arrays.setAll(arr, i -> new ArrayList<>()); 3.去掉首尾空格...

Angular微前端架构:Module Federation + ngx-build-plus (Webpack)

以下是一个完整的 Angular 微前端示例&#xff0c;其中使用的是 Module Federation 和 npx-build-plus 实现了主应用&#xff08;Shell&#xff09;与子应用&#xff08;Remote&#xff09;的集成。 &#x1f6e0;️ 项目结构 angular-mf/ ├── shell-app/ # 主应用&…...

JVM虚拟机:内存结构、垃圾回收、性能优化

1、JVM虚拟机的简介 Java 虚拟机(Java Virtual Machine 简称:JVM)是运行所有 Java 程序的抽象计算机,是 Java 语言的运行环境,实现了 Java 程序的跨平台特性。JVM 屏蔽了与具体操作系统平台相关的信息,使得 Java 程序只需生成在 JVM 上运行的目标代码(字节码),就可以…...

Go 并发编程基础:通道(Channel)的使用

在 Go 中&#xff0c;Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式&#xff0c;用于在多个 Goroutine 之间传递数据&#xff0c;从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...

深度学习水论文:mamba+图像增强

&#x1f9c0;当前视觉领域对高效长序列建模需求激增&#xff0c;对Mamba图像增强这方向的研究自然也逐渐火热。原因在于其高效长程建模&#xff0c;以及动态计算优势&#xff0c;在图像质量提升和细节恢复方面有难以替代的作用。 &#x1f9c0;因此短时间内&#xff0c;就有不…...