;本章知识点导图;在Python中操作数据库时,要先导入数据库对应的驱动,然后通过Connection对象和Cursor对象操作数据。最后要确保打开的Connection对象和Cursor对象都正确地被关闭,否则资源就会泄露。
在Python中使用SQLite数据库,需要以下几个关键步骤:
导入sqlite3模块包:importsqlite3
通过sqlite3的connect()函数连接已经存在的或新创建数据库,获得操作数据库的句柄:conn=sqlite3.connect(数据库名称)
利用句柄执行SQL指令:conn.execute(sql指令串)
利用句柄把操作结果提交给数据库:mit()
最后要关闭数据库的连接:conn.close();10.1创建数据库;有了游标,我们可以对表进行各种操作,创建表、对表进行增删改查等。在执行这些操作时,均通过c.execute()执行sql语句。;10.2插入数据;也可以一次性插入多条记录,用executemany()的方法来执行。如:;10.3查询记录;在执行查询语句后,Python将返回一个循环器,包含有查询获得的多个记录。可以循环读取,也可以使用sqlite3提供的fetchone()和fetchall()方法读取记录.;10.4修改记录;In[4]:forrowincursor:
???...:print(ID=,row[0])
???...:print(NAME=,row[1])
???...:print(ADDRESS=,row[2])
???...:print(SALARY=,row[3],\n)
ID=1
NAME=Paul
ADDRESS=California
SALARY=25000.0
?
ID=2
NAME=Allen
ADDRESS=Texas
SALARY=15000.0
?
ID=3
NAME=Teddy
ADDRESS=Norway
SALARY=20000.0
?
ID=4
NAME=Mark
ADDRESS=Rich-Mond
SALARY=65000.0
?
?
In[5]:conn.close();10.5删除记录;In[4]:forrowincursor:
???...:print(row)
???...:print(ID=,row[0])
???...:print(NAME=,row[1])
???...:print(ADDRESS=,row[2])
???...:print(SALARY=,row[3],\n)
???...:conn.close()
(1,Paul,California,25000.0)
ID=1
NAME=Paul
ADDRESS=California
SALARY=25000.0
?
(3,Teddy,Norway,20000.0)
ID=3
NAME=Teddy
ADDRESS=Norway
SALARY=20000.0
?
(4,Mark,Rich-Mond,65000.0)
ID=4
NAME=Mark
ADDRESS=Rich-Mond
SALARY=65000.0;10.6异常处理;实践