Python 数据库进阶篇,学习一篇就够了,看完不会你找我
一、前言:
-
我们在上一篇讲解了python中使用数据库时涉及到的一些概念和api的介绍。
-
本次我们将通过几个小的demo来实战演练python操作数据库的一些知识点。
二、SQLite数据库使用详解
-
SQLite是一种嵌入式数据库,它的数据库就是一个文件。由于SQLite本身是C写的,而且体积很小,所以,经常被集成到各种应用程序中,甚至在iOS和Android的App中都可以集成。
-
Python就内置了SQLite3,所以,在Python中使用SQLite,不需要安装任何东西,直接使用。
三、源码演示
-
OK,我们下看下示例代码
-
1、我们声明一个User类。
-
这里还是要推荐下小编的Python学习群:483546416,不管你是小白还是大牛,小编我都欢迎,不定期分享干货,包括小编自己整理的一份2017最新的Python资料和0基础入门教程,欢迎初学和进阶中的小伙伴。在不忙的时间我会给大家解惑。
-
因为只是用于演示,所以我们只设置了两个字段。
-
2、我们再看下我们的示例代码。
-
首先编写一个方法用来执行创建表的语句,如果表不存在的情况下才会创建哦。
-
然后我们再编写一个插入数据方法,我们先演示只插入一条数据。
-
ok,数据插入了,接下来我们再编写一个查询数据的方法
-
OK,创建表格、插入数据、查询数据都写好了,接下来我们调用看一下:
-
运行结果如下:
插入了1条数据
[(‘-1’, ‘anjie’)]
-
OK,我们再编写一个插入多条数据的方法。
-
结果输出为:
[(‘-1’, ‘anjie’), (‘0’, ‘anjie0’), (‘1’, ‘anjie1’), (‘2’, ‘anjie2’), (‘3’, ‘anjie3’), (‘4’, ‘anjie4’), (‘5’, ‘anjie5’), (‘6’, ‘anjie6’), (‘7’, ‘anjie7’), (‘8’, ‘anjie8’), (‘9’, ‘anjie9’)]
-
其插入了10条数据,从0到9。
-
OK,通过这些数据我们再单独看三个方法fetchone、fetchmany、fetchall
-
输出结果为:
(‘-1’, ‘anjie’)
[(‘0’, ‘anjie0’)]
[(‘1’, ‘anjie1’), (‘2’, ‘anjie2’)]
[(‘3’, ‘anjie3’)]
[(‘4’, ‘anjie4’), (‘5’, ‘anjie5’), (‘6’, ‘anjie6’), (‘7’, ‘anjie7’), (‘8’, ‘anjie8’), (‘9’, ‘anjie9’)]
-
从结果我们可以看到
-
fetchone获取第一条数据,
-
fetchmany获取多条,通过size指定,不指定默认为1,也可以通过arraysize指定
-
fetchall获取剩余所有的数据。
-
要注意一点:curs里面的数据及为查询到的数据,取出一条,里面就会少一条,所以如果你第一个就调用fetchall,那么后面取的都是空集合了。
四、总结
-
OK,通过前面的学习,相信大家已经基本掌握了python操作SQLite的基本步骤,其他数据库也基本类型,剩下就更多是对SQL语句的学习了。
-
喜欢就给小编点个赞哦,谢谢
@著作权归作者所有,转载请联系作者用心写好每一篇文章