python+sqlite,简单叙述使用Python操作SQLite数据库的步骤
SQLite是一个嵌入式数据库,它的数据库是一个文件。因为SQLite本身是用C写的,而且体积小,所以经常被集成到各种应用中,甚至是iOS和Android的应用中。SQLite3内置于Python中。所以,在Python中使用SQLite时,不需要安装任何东西,直接使用。
在使用SQLite之前,我们需要弄清楚几个概念:
表是存储在数据库中的关系数据的集合。一个数据库通常包含多个表,如学生表、班级表、学校表等等。和表通过外键相关联。
操作关系数据库,首先需要连接到数据库,一个数据库连接叫做连接;
连接到数据库后,需要打开游标,这个游标叫做Cursor,通过游标执行SQL语句,然后得到执行结果。
Python定义了一组操作数据库的API接口。要将任何数据库连接到Python,只需要提供符合Python标准的数据库驱动程序。
因为SQLite的驱动内置在Python标准库中,所以我们可以直接操作SQLite数据库。
让我们在Python交互式命令行中练习一下:
#导入SQLite驱动程序3360
导入sqlite3
#连接到SQLite数据库
#数据库文件是test.db
#如果文件不存在,它会自动在当前目录下创建3360。
conn=sqlite3.connect(test.db )
#创建光标:
cursor=conn.cursor()
#执行SQL语句以创建用户表3360
cursor . execute( create table user(idvarchar(20)primary key,namevarchar(20)))
sqlite3 . cursor object= at= 0x 10 F8 aa 260=
#继续执行SQL语句并插入记录3360
cursor . execute( insertintouser(id,name)值(\1\ ,\Michael\ ))
sqlite3 . cursor object= at= 0x 10 F8 aa 260=
#通过rowcount 3360获取插入的行数
游标. rowcount
一个
#关闭光标:
cursor.close()
#提交事务3360
conn.commit()
#关闭连接:
conn.close()
/sqlite3.cursor/sqlite3.cursor让我们再次尝试查询记录:
conn=sqlite3.connect(test.db )
cursor=conn.cursor()
#执行查询语句3360
cursor . execute( select * from user where id=?,1)
sqlite3 . cursor object= at= 0x 10 F8 aa 340=
#获取查询结果集3360
values=cursor.fetchall()
价值观念
[(u1 ,uMichael)]
cursor.close()
conn.close()
/sqlite3。游标在使用Python的DB-API时,只要弄清楚连接和游标对象,并记得打开后关闭,就可以放心使用了。
使用Cursor对象执行insert、update、delete语句时,由rowcount返回执行结果,即可获得执行结果。
当使用Cursor对象执行select语句时,可以通过featchall()获得结果集。结果是一个列表,每个元素是一个元组,对应一行记录。
如果SQL语句有参数,那么您需要根据位置将参数传递给execute()方法。有多少?占位符必须对应几个参数,例如:
cursor . execute( select * from user where id=?, 1)SQLite支持常见的标准SQL语句和几种常见的数据类型。详情请参考SQLite官网。
小结
在Python中操作数据库时,首先要导入数据库对应的驱动程序,然后通过Connection对象和Cursor对象操作数据。
请确保打开的连接对象和游标对象都已正确关闭,否则,资源将会泄漏。
怎样才能保证连接对象和光标对象即使出了问题也是关闭的?请回忆一下try :的用法.3360除外.最后3360.
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。