数据库的操作过程,只不过便是下边7招:

建立

载入

插进

升级

查看

排列

删掉

大家先要导入sqlite3这一控制模块 ,这一控制模块是Python内置的,不用安裝(上一篇我写错了,许多善心的小伙伴们提示我 ,特别感谢改正) ,随后建立数据库非常简单,大家假定我们要把下边一个“工资条 ”表格数据存进数据库,怎样实际操作呢 ,下边一步一步来实际操作,follow me !

![image](//upload-images.jianshu.io/upload_images/3256786-3bf3cdafc9612d28.png?imageMogr2/auto-orient/strip|imageView2/2/w/612/format/webp)

## 1.建立数据库

sqlite3.connect(database [,timeout ,other optional arguments])

**1).这一涵数主要是开启一个到SQLite数据库文档的连接**

若取得成功回到一个目标,假如给出的数据库名字不会有 ,则该启用将建立一个数据库 。假如我不愿意在当前目录中建立数据库,那麼你能特定一个途径就可以.

**2).数据库好啦,我们要建表**

数据库实际上便是一个一个表 ,随后维护保养这种表中间的爱和情恨,怎样建表呢,简易 ,用SQL语句建表,SQL语句還是很浅显易懂的:

![image](//upload-images.jianshu.io/upload_images/3256786-73df57eaa9d49586.png?imageMogr2/auto-orient/strip|imageView2/2/w/824/format/webp)

**最先建立一个table姓名叫USERS,假如不会有就建立它:**

随后这一表有6列,每一个分别是:

ID#为主导key,便是唯一标志表中某一条纪录,不可以反复,相近身份证件

NAME#种类是TEXT,也就是字符串数组 ,是可变性长短的字符串数组

AGE#种类是INT,也就是整形

SEX#种类是字符串数组 ,固定不动长短为10个字节数,无论用无需都分派10个字节数

CITY#种类是字符串数组,固定不动长短为30个字节数,无论用无需都分派30个字节数

SALARY#种类是浮点数

**然后插进数据信息:**

INSERT INTO USERS (ID,NAME,AGE,SEX,CITY,SALARY) VALUES(1,'Leo',32,'Male','ShangHai',12000)

也是一个SQL语句,和前边的key要相匹配 ,按序载入大家的报表內容

**随后递交commit:**

connection.commit()

艰辛写了大半天,要递交当今的事务管理。假如忘记了,抱歉那麼你所做的一切姿势对数据库联接而言不是由此可见的

**最终关掉数据库**

connection.close() ,千万别忘记关掉

![image](//upload-images.jianshu.io/upload_images/3256786-de04006bc75b88fa.png?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)

## 2.载入数据库

建立好啦数据库以后,我们要读一下,读取数据就简易多了,大家用**SELECT语句**

*SQLite 的 SELECT 语句 ,能够便捷从 SQLite 数据库表中读取数据,以結果表的方式回到数据信息。这种結果表也被称作結果集,随后大家复印出这一結果集里边的每一行数据信息.*

![image](//upload-images.jianshu.io/upload_images/3256786-22eea80293c2073a.png?imageMogr2/auto-orient/strip|imageView2/2/w/918/format/webp)

select * from USERS 查看表里边的全部数据信息 ,回到给一个游标cursor

循环系统复印出每一行的数据信息

## 3.插进数据库

假如我们要加上一行新的內容到数据库中该怎么办,用INSERT语句

conn.execute("INSERT INTO USERS (ID,NAME,AGE,SEX,CITY,SALARY) VALUES (10,'Lily',30,'Female','GuangZhou', 13000)");

例如大家提升一个女孩的薪水到数据库中,就需要以此把每一列的內容载入表中

谨记:保证 值的次序与列在表中的次序一致

![image](//upload-images.jianshu.io/upload_images/3256786-ef11b803a0026965.png?imageMogr2/auto-orient/strip|imageView2/2/w/1200/format/webp)

## 4.升级数据库

数据库常常要升级,例如ID=10 的Lily同学们薪水暴涨了 ,帮她升级一下数据库吧 ,大家用Update 语句.

conn.execute("UPDATE USERS set SALARY =30000.00 WHERE ID=10");

*SQLite 的 UPDATE 查看用以改动表中的纪录,一般全是相互配合应用含有 WHERE 子句的 UPDATE 查看随后特定的那一行,这儿我们都是要升级ID=10,否则你能把任何人的薪水都升级了 ,那老总就痛哭~~*

![image](//upload-images.jianshu.io/upload_images/3256786-fe0b56073802df9b.png?imageMogr2/auto-orient/strip|imageView2/2/w/1196/format/webp)

## 5.查看数据库

数据库做好了,我们都是要查看是务必呢,怎么查询呢 ,大家用Select 语句

跟前边的读取数据有点儿相近,仅仅上边是整盘载入,大家这里是依照某一个标准载入.

例如我们要查询表 ,年纪超过三十岁,而且薪水在10000之上的同学们

cursor = conn.execute("SELECT AGE,SALARY from USERS "

"WHERE AGE>30 and SALARY >=10000")

用一个复合型的判断推理一下就拿下了,是否象英文一样表诉,SQL語言還是很简约的

![image](//upload-images.jianshu.io/upload_images/3256786-6baecbe35fcfb7fa.png?imageMogr2/auto-orient/strip|imageView2/2/w/1144/format/webp)

## 6.排列数据库

数据库的排列也是常常得用的 ,我们要依照某一些标准来排列,例如依照薪水排列,例如依照年纪排列 ,如何排呢 ,用**ORDER BY语句**

*SQLite 里的 ORDER BY 子句是用于依照一个或好几个列按升序或降序来排序*

例如按薪水排列:

conn.execute("SELECT id, name, CITY, salary  from USERS ORDER BY salary DESC ")

![image](//upload-images.jianshu.io/upload_images/3256786-b58aa3693d6bfda0.png?imageMogr2/auto-orient/strip|imageView2/2/w/1180/format/webp)

>>

(10, u'Lily', u'GuangZhou', 30000.0)

(2, u'Jack', u'BeiJing', 15000.0)

(1, u'Leo', u'ShangHai', 12000.0)

(4, u'Martin', u'NanJing', 9500.0)

(3, u'Lulu', u'ChengDu', 8000.0)

## 7.删掉数据库

上边讲过6种,还差一种常常用到的实际操作,便是删掉数据库里边的內容 ,前边一开始就就用了一招删掉全部表,假如想删掉一个表里边的一行怎么操作呢,用Delete语句

*SQLite 的 DELETE 查看用以删掉表中现有的纪录,一般也是用含有 WHERE 子句的 DELETE 查看来删掉选中行 ,不然全部的纪录都是会被删掉 。*

例如大家删掉ID=2同学们的纪录:

conn.execute("DELETE from USERS where ID=2")

谨记要conn.commit()

![image](//upload-images.jianshu.io/upload_images/3256786-c14ea8e269691054.png?imageMogr2/auto-orient/strip|imageView2/2/w/936/format/webp)

结果:

好啦,SQLite数据库的新手入门实际操作就讲道这儿了,是否非常简单啊,实际上许多 繁杂的物品全是一层一层顺藤摸瓜的去了解 ,会轻轻松松许多 ,假如大伙儿对今日的內容有哪些疑惑,热烈欢迎留言板留言一起探讨 ,

强烈推荐一下我建的python交流学习QQqun:850973621,群内有免费的视频实例教程,开发环境、
电子书 、新项目源码分享 。一起学习交流 ,一起发展!

![QQ截屏20201205144328.png](https://upload-images.jianshu.io/upload_images/25205170-933953ee6a8e09f1.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)

![QQ截屏20201210135017.png](https://upload-images.jianshu.io/upload_images/25205170-79f3bcfd4fdcdc59.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)

![QQ截屏20201210135040.png](https://upload-images.jianshu.io/upload_images/25205170-3fae929ec354862a.png?imageMogr2/auto-orient/strip|imageView2/2/w/1240)

 


创作者:小白学python
连接:https://www.jianshu.com/p/643295e217b6
来源于:百度百家
版权归创作者全部。商业服务转截请联络创作者得到 受权 ,非商用转截请标明出處。

文章来源于网络,如有侵权请联系站长QQ61910465删除
本文版权归趣快排www.sEoguruBlog.com 所有,如有转发请注明来出,竞价开户托管,seo优化请联系QQ✈61910465