19 什么是数据库?Python操作数据库难吗

小朋友们好,大朋友们好!
我是猫妹,一名爱上Python编程的小学生 。
欢迎和猫妹一起,趣味学Python 。
今日主题
今天我们学习下什么是数据库,以及如何用Python操作数据库 。
数据库=数据 库

19 什么是数据库?Python操作数据库难吗

库 , 汉语常用字(一级字),读作kù,最早见于战国文字,会意兼形声字 。
原义为收藏兵车及其他武器的处所;后来泛指收藏各种物品的处所;又指监狱 。
车库是存放车的场所 。
粮库是存放粮的场所 。
水库是存放水的场所 。
小金库是存放钱的场所 。
数据库呢?
自然是存放数据的场所 。
数据库是“按照数据结构来组织、存储和管理数据的仓库” 。是一个长期存储在计算机内的、有组织的、可共享的、统一管理的大量数据的集合 。
19 什么是数据库?Python操作数据库难吗

小点的数据可能放在记事本中、word、ppt等软件中,大量的数据呢?
一般都是保存到数据库中 。
19 什么是数据库?Python操作数据库难吗

数据库其实就在我们身边,你想想 , 你登录一个网站或是APP,输入用户名和密码,点击下回车,信息正确登录成功,信息错误登录失败 。
几百万、几千万、甚至上亿的信息存放在哪里呢?
这些信息就存放在数据库中,这些信息包括用户名、密码、性别、地址、商品描述、图片等诸多信息 。
19 什么是数据库?Python操作数据库难吗

如何在几百万、几千万、上亿的海量数据中,瞬间找到你输入的数据 , 然后判断是否匹配,想想就是高科技?。?
的确,数据库是一门高科技 。
常见的数据库
常见的数据库有哪些呢?
我们一起学习下 。
19 什么是数据库?Python操作数据库难吗

Oracle应该是世界上最大的数据库公司,一般超大规模数据会用到oracle 。
19 什么是数据库?Python操作数据库难吗

微软的SQl Server,一般中等规模数据会用到SQL Server 。
微软的商业化产品,微软sql语句兼容性好 , 商业化成熟度高 。
19 什么是数据库?Python操作数据库难吗

微软的Access,小巧,简单易用,office系列之一 。
19 什么是数据库?Python操作数据库难吗

MySQL 软件采用了双授权政策,分为社区版和商业版 , 由于其体积小、速度快、总体拥有成本低 , 尤其是开放源码这一特点,一般中小型和大型网站的开发都选择 MySQL 作为网站数据库 。
MySQL 在 2008 年被Sun以10亿美金所收购,2009年4月20日Sun被甲骨文收购 。
19 什么是数据库?Python操作数据库难吗

SQLite,是一款轻量型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中 。
它的设计目标是嵌入式的 , 而且已经在很多嵌入式产品中使用了它,它占用资源非常的低,可能只需要几百K的内存就够了 。
它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源的世界著名数据库管理系统来讲 , 它的处理速度比他们都快 。
19 什么是数据库?Python操作数据库难吗

MongoDB是一个基于分布式文件存储的数据库 。由C语言编写 。旨在为WEB应用提供可扩展的高性能数据存储解决方案 。
MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的 。
操作数据库
上面一下子粗略介绍了那么多数据库 , 是不是有点懵?
对于非专业人员来讲,只要会简单使用就可以了 。
专业人员,要学习很多知识呢 。
19 什么是数据库?Python操作数据库难吗

咱们今天就用SQLite为例子,学习下数据库的常用操作 。
其他的数据库需要下载安装软件 , 咱们今天只是简单了解 , 就不下载安装包了 。
Python本身已经内置了SQLite , 不需要安装,可以直接使用哦!
数据库、数据表、字段、记录等,我们先对这几个名字有个大概的印象 。
19 什么是数据库?Python操作数据库难吗

举个例子,猫妹班级的语文成绩、英语成绩、数学成绩 。
先有个数据库,猫妹班级成绩 。
数据库中是数据表 , 这里有三张表,语文成绩、数学成绩、英语成绩 。
表中有字段和记录,语文成绩中的学号、姓名、成绩是字段 。
学号01,姓名猫妹,成绩85,这表示语文成绩表中的一条记录 。
学号不允许有重复值,可以作为主键 。
19 什么是数据库?Python操作数据库难吗

创建数据库
19 什么是数据库?Python操作数据库难吗



  • 1行:需要导入sqlite3模块 。
  • 4行:需要先用connnect创建一个connection对象 。
  • 如果数据库文件lvye.db存在,则连接上它 。
  • 如果不存在,则创建后连接上它 。
  • 6行:创建cursor,中文是游标,我们都是通过游标来访问数据表的 , 比如增删改查 。
  • 8行:执行sql语句,这些语句是创建了一个表table,这个表中有id(主键)、姓名name、年龄age 。
  • 啥是主键呢?就是不能重复 。
  • 比如身份证号可以作为主键,而姓名不可以 。
  • id类型是int,name类型是varchar,age类型是int 。
  • 12行:关闭游标 。
  • 14行:关闭connection 。
如果再次运行会报如下错误:
19 什么是数据库?Python操作数据库难吗

这是因为该数据中已经存在 student table了,同一个数据库中不能存在两个同名的数据表 。
增删改查操作
数据库中存放的是数据表,数据表中存放的是数据 。
19 什么是数据库?Python操作数据库难吗

对数据表操作,最频繁的就是增删改查操作了 。
增删改查指的是在表中增加一条记录、删除一条记录、修改一条记录、查询一条记录 。

19 什么是数据库?Python操作数据库难吗

19 什么是数据库?Python操作数据库难吗

insert into student (id, name, age) values (1, '李雷', 21)
表示向数据表student中添加一条数据 , 这条数据的内容是 (1, '李雷', 21),这些内容的格式是(id, name, age) 。
关闭数据库连接之前一定要调用conn.commit(),否则数据更新不成功 。

19 什么是数据库?Python操作数据库难吗

19 什么是数据库?Python操作数据库难吗

select * from student表示从数据表student中获取所有数据 。
它的返回值是一个列表,该列表的每一个元素都是一个元组 。

19 什么是数据库?Python操作数据库难吗

19 什么是数据库?Python操作数据库难吗

update student set name='猫妹' where id=3
表示更新一条记录,这条记录的id是3,将其name改为猫妹 。

19 什么是数据库?Python操作数据库难吗

19 什么是数据库?Python操作数据库难吗

delete from student where id=3
表示从数据表中删除一条记录 , 这条记录的id是3 。
19 什么是数据库?Python操作数据库难吗

怎么样?
不难吧?
你学会了吧?
和数据库连接、断开等这些都是固定的格式,遵守就可以了 。
sql语句则学问很多,要精通需要多学习多练习,它是一门编程语言 , 有没有觉得它和咱们人类语言很接近?
SQL即结构化查询语言(Structured Query Language),是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名 。
19 什么是数据库?Python操作数据库难吗

好了,我们今天就学到这里吧!
如果遇到什么问题,咱们多多交流,共同解决 。
【19 什么是数据库?Python操作数据库难吗】我是猫妹,咱们下次见!

相关经验推荐