oracle数据库更新语句_20_手把手教你学Python之操作数据库

6281f74f67008ca12027e4a9e5a60c0e.png

数据库是数据的仓库,将大量数据按照一定的方式组织并存储起来,方便进行管理和维护,例如快速检索和统计等。数据库的主要特点:

  • 以一定的方式组织、存储数据;
  • 能为多个用户共享;
  • 与程序彼此独立。
  • ……

数据库管理系统是一种操纵和管理数据库的大型软件。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。用户通过DBMS访问数据库中的数据,数据库管理员通过DBMS进行数据库的维护工作。主要功能包括:数据定义(创建数据库、表等)、数据操纵(增删查改等)、数据库控制(并发、权限等)、数据库维护(转存、恢复等)等。

常见数据库类型

当前常见的数据库类型有:关系型数据库键值存储数据库面向文档数据库图数据库等。

  • 关系型数据库:当前应用最广泛的数据库类型,把复杂的数据结构归结为简单的二元关系(即二维表形式),例如MySQLSQL ServerOracleSQLite等;
  • 键值存储数据库:使用简单的键值方法来存储数据,其中键作为唯一标记,是一种非关系数据库,例如Redis
  • 面向文档数据库:用于存放并获取文档,主要是XML、JSON等具备自我描述特性、呈现层次结构的文档,例如MongoDB
  • 图数据库:一种存储图关系的数据库,应用图理论存储实体之间的关系信息,例如Neo4J

关系型数据库

关系型数据库是指采用关系模型组织数据的数据库,它以行和列的形式存储数据,一系列的行和列组成了表,一组表组成了数据库。在关系模型中,实体以及实体之间的联系都会映射成统一的关系二维表,关系型数据库操作的对象和返回的结果都是二维表

  • 关系:可以理解为一张二维表,每个关系都有一个关系名,也就是表名;
  • 属性: 可以理解为二维表中的一列,在数据库中称为字段,属性名就是表中的列名;
  • 域:属性值的取值范围,数据库中某一列的取值范围;
  • 元组:可以理解为二维表中的一行,在数据库中称为记录
  • 分量:元组中的一个属性值
  • 关键字:可以唯一标识元组的属性或属性组,数据库中称为主键

SQLite数据库

SQLite是一个轻量级的关系型数据库,SQLite并没有包含大型客户/服务器数据库(如Oracle、SQL Server)的所有特性,但它包含了操作本地数据的所有功能,简单易用、反应快

SQLite本质上就是一个文件,内部只支持 NULLINTEGERREAL浮点数)、TEXT(字符串文本)和BLOB(二进制对象)这五种数据类型,但实际上SQLite也接受varchar(n)等数据类型,只不过在运算或保存时会转成上面对应的数据类型

在SQLite中可以把各种类型的数据保存到任何字段中,而不用关心字段声明的数据类型是什么。因此SQLite在解析建表语句时,会忽略建表语句中跟在字段名后面的数据类型信息

结构化查询语言SQL

结构化查询语言(Structured Query Language 简称SQL ),是一种特殊的编程语言,主要用于关系型数据库的操作,包括数据存取、查询、更新和管理等

SQL语言是一种高级的非过程化编程语言,用户使用SQL对数据操作时,并不需要知道数据的存储方式和操作细节。不同的关系型数据库底层存储方式不同,但是可以使用相同的SQL语句进行操作,对于用户来说,操作方式类似,可以快速在不同的数据库上进行移植

SQL语言不仅可独立使用,还可嵌入到其他高级语言(如Java、Python等)中,两种方式下SQL语法结构基本一致,为用户提供了极大的灵活性和便利性

创建数据库表时,使用create table,删除表时,使用drop table,建议在建表和删表前进行判断,否则创建一个已存在的表删除不存在的表都会报错。具体语法细节如下。

35bcfee9d8c3a815b526633dadb923d7.png

从数据库中查询数据时,使用select语句,通过where子句指定查询条件,通过group by子句对查询结果进行分组,通过order by子句对查询结果进行排序。具体语法细节如下:

d50678b9c009ff8ba1b12e9fa6e81995.png

2e98c99559cb0d35155dde8a855ded59.png

b59e1b9c5d149cd8e383df759b62d4c1.png

向数据库表中插入内容时,使用insert into语句。可以指定字段以及对应的值,字段和值的顺序需一一对应。当省略字段时,表示按照数据库表中字段的顺序插入相应的值

6ac499a3e82c6aadc3b346b4010faee8.png

更新数据库表中的内容时,使用update语句,可以通过where子句指定需要更新的记录,否则更新所有记录;删除数据库表中的内容时,使用delete语句,可以通过where子句指定需要删除的记录,否则删除所有记录,但是并不会删除表结构,注意和drop table之间的区别

af3f7b2b94c7c47cda51083131ce6bb4.png

Python DB-API规范

Python提供了一个标准数据库API,称为DB-API,用于处理基于SQL的数据库的访问和操作

c209097d382dc871e5fd2fa1ee5458fa.png

DB-API在代码与驱动程序之间提供了一个抽象层,定义了一系列必需的数据库存取方式,使得不同的数据库拥有统一的访问接口,从而可以很方便的在不同的数据库之间进行切换,而无需丢弃现有的代码。

82b611043e68927d974bf04988e456fd.png

Python操作SQLite流程

  • 导入模块:sqlite3
  • 连接数据库得到Connection对象:sqlite3. connect(文件名)
  • 获取Cursor对象:Connection对象.cursor()
  • 执行数据库的增删查改操作:Cursor对象.execute(sql语句)等
  • 提交数据库操作: Connection对象. commit()
  • 关闭Cursor:Cursor对象.close()
  • 关闭Connection:Connection对象.close()

注意:当需要对数据库进行修改时,一定要调用commit()方法,否则不会更新数据库

Python操作数据库案例

fae625663b8d22729a05b6a5c84e3407.png

d40f1961d3f0d5f4df202938a468596f.png

f4cf29292c3155c6c89caec704e71f54.png

今日练习题

72b347727758112abf95d5c0f8faede6.png

更多详细内容可查看视频讲解,手把手教你学Python(入门基础)课程完整视频腾讯课堂链接:https://ke.qq.com/course/1581404?tuin=4c5cc1bc

089c048a2a5a06b948ebfb9a4090e08c.png

更多Python学习资料请加入群、联系助理老师或关注微信公众号获取,我们会不定期更新!

6e575a53d8eb792d76f2a88bd34e7328.png

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

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

相关文章

查询Oracle正在执行的sql语句

--查询Oracle正在执行的sql语句及执行该语句的用户 [sql] view plaincopy SELECT b.sid oracleID, b.username 登录Oracle用户名, b.serial#, spid 操作系统ID, paddr, sql_text 正在执行的SQL, b.machine 计算机名 FROM v$p…

WinForm 清空界面控件值的小技巧

WinForm 清空界面控件值的小技巧 原文:WinForm 清空界面控件值的小技巧在WinForm里面有时候需要清空自己输入内容或是选择的选项,以便重新操作流程,那么一般你是怎么清空界面各个控件值的呢?如果窗体里面控件,尤其是TextBox控件比…

virsh的使用

2019独角兽企业重金招聘Python工程师标准>>> ###这里最先要完成的是对网卡的配置(os ubuntu14.04) 目的是实现vm上是以桥接的方式联网 修改/etc/network/interfaces # interfaces(5) file used by ifup(8) and ifdown(8) auto lo iface lo inet loopback #auto eth0…

SQL Server - 高可用与灾难恢复(HADR)技术 -- AlwaysOn可用性组(理论篇)

因为篇幅原因,AlwaysOn可用性组被拆成了两部分:理论部分和实战部分。而实战部分又被拆成了准备工作和AlwaysOn可用性组搭建。 三篇文章各自的链接: SQL Server ->> 高可用与灾难恢复(HADR)技术 -- AlwaysOn&…

python 3.6.5编译安装_Linux系统安装Python3.6.5

Linux系统安装Python3.6.5 1、下载Python3.6.5 wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz 如果报command not found则执行:yum -y install wget命令后再进行下载 也可下载好安装包进行手动上传 2、安装Python3.6可能使用的依赖 yum install o…

从传统运维到云运维演进历程之软件定义存储(一)

运维是企业业务系统从规划、设计、实施、交付到运维的最后一个步骤,也是重要的步骤。运维从横向、纵向分可以分为多个维度和层次,本文试图抛开这纷繁复杂的概念,讲述一个传统的企业级运维人员转型到云运维人员,尤其是软件定义存储…

Abp Uow 设计

初始化入口 在AbpKernelModule类中&#xff0c;通过UnitOfWorkRegistrar.Initialize(IocManager) 方法去初始化 1 /// <summary>2 /// This class is used to register interceptor for needed classes for Unit Of Work mechanism.3 /// </summary>4 …

python3.8 实现鼠标自动移动_“新生报到”!【移动机器人 HD-1500】负载1500kg,实现了重型货物运输的自动化...

2020年第三季度欧姆龙自动化&#xff08;中国&#xff09;有限公司新品【移动机器人 HD-1500】即日起在中国市场首次对外发布&#xff0c;实现了重型货物运输的自动化。这款最新的自动化移动机器人重型载荷能力为1500 kg&#xff01;更高的载荷能力可以令客户实现以前无法实现的…

android 监听本机网络请求_fiddler如何抓取https请求实现fiddler手机抓包-证书安装失败100%解决...

一、HTTP协议和HTTPS协议。(1) HTTPS协议HTTP协议SSL协议&#xff0c;默认端口&#xff1a;443(2) HTTP协议&#xff08;HyperText Transfer Protocol&#xff09;&#xff1a;超文本传输协议。默认端口&#xff1a;80&#xff0c;其中包含请求和响应两部分&#xff0c;其中请求…

C#的四舍五入函数

2019独角兽企业重金招聘Python工程师标准>>> 1.四舍六入&#xff08;国外的四舍五入&#xff09; Math.Round&#xff08;num&#xff09;; 2.四舍五入 Math.Round(num,MidpointRounding.AwayFromZero); 转载于:https://my.oschina.net/CrazyBoy1024/blog/746268

【BZOJ2243】 [SDOI2011]染色

Description 给定一棵有n个节点的无根树和m个操作&#xff0c;操作有2类&#xff1a; 1、将节点a到节点b路径上所有点都染成颜色c&#xff1b; 2、询问节点a到节点b路径上的颜色段数量&#xff08;连续相同颜色被认为是同一段&#xff09;&#xff0c;如“112221”由3段组成&am…

数字信号处理的fpga实现_FPGA数字信号处理:通信类I/Q信号及产生

大侠好&#xff0c;欢迎来到FPGA技术江湖&#xff0c;江湖偌大&#xff0c;相见即是缘分。大侠可以关注FPGA技术江湖&#xff0c;在“闯荡江湖”、"行侠仗义"栏里获取其他感兴趣的资源&#xff0c;或者一起煮酒言欢。大侠好&#xff0c;“宁夏李治廷”再一次和各位见…

iic通讯协议

IIC总线 一般串行数据通讯都有时钟和数据之分,有异步和同步之别. 有单线,双线和三线等. I2C肯定是2线的(不算地线). I2C协议确实很科学,比3/4线的SPI要好,当然线多通讯速率相对就快了. I2C的原则是: 在SCL1(高电平)时,SDA千万别忽悠!!! 否则,SDA下跳则"判罚"为&…

使用 Python 切割图片

刚好我有张 PNG 图片需要均匀切割&#xff0c;刚好我不会 PhotoShop&#xff0c;刚好我想用 Python 来练练手。 于是撸袖子码脚本。 import os from PIL import Imagedef splitimage(src, rownum, colnum, dstpath):img Image.open(src)w, h img.sizeif rownum < h and co…

python数据分析知识点_Python数据分析--Pandas知识点(三)

本文主要是总结学习pandas过程中用到的函数和方法, 在此记录, 防止遗忘. 下面将是在知识点一, 二的基础上继续总结. 前面所介绍的都是以表格的形式中展现数据, 下面将介绍Pandas与Matplotlib配合绘制出折线图, 散点图, 饼图, 柱形图, 直方图等五大基本图形. Matplotlib是python…

SPI通讯协议

SPI&#xff1a;高速同步串行口。是一种标准的四线同步双向串行总线。 SPI&#xff0c;是英语Serial Peripheral interface的缩写&#xff0c;顾名思义就是串行外围设备接口。是Motorola首先在其MC68HCXX系列处理器上定义的。SPI接口主要应用在 EEPROM&#xff0c;FLASH&#x…

基于MVVM的知乎日报应用安卓源码

使用data binding , dagger2 , retrofit2和rxjava实现的&#xff0c;基于MVVM的知乎日报APP运行效果&#xff1a; <ignore_js_op> 使用说明&#xff1a; 项目结构android data binding来实现MVVM。dagger2来完成依赖注入。retrofit2rxjava实现restful的http请求。第三方类…

php签入html出来的影响seo吗_搜索引擎优化_SEO必备6大技能+SEO误区讲解!

大家好&#xff0c;我是逆冬&#xff0c;今天来分享一下实战SEO需要掌握什么样的技能以及SEO知识误区&#xff0c;本篇文章仅代表逆冬本人几年的经验、不见得适合每一个SEOer!下面就让逆冬本人来分析一下实战型SEO到底需要掌握什么技能。第1点&#xff1a;SEO需要不需要熟练掌握…

一种M2M业务的架构及实现M2M业务的方法

http://www.cnblogs.com/coryxie/p/3849764.html 技术领域 [0001] 本发明涉及通信技术领域&#xff0c;尤其涉及一种M2M业务的架构及实现M2M业务的方法。 背景技术 [0002] 随着通信技术的飞速发展以及通信技术与互联网技术的进一步融合&#xff0c;移动业务以及移动互联网技术普…

第二章 mybatis使用注解实现in查询(mysql)

mybatis实现in查询&#xff0c;两种方法&#xff1a; xml形式&#xff08;推荐&#xff09;注解方式&#xff08;个人喜欢注解&#xff0c;但是in场景可能不太适合注解&#xff09;代码&#xff1a; 1 Select("<script>" 2 "SELECT ID…