使用Python对SQLite数据库操作

SQLite是一种嵌入式数据库,它的数据库就是一个文件。由于SQLite本身是C写的,而且体积很小,所以,经常被集成到各种应用程序中,甚至在IOS和Android的APP中都可以集成。

Python内置了SQLite3,所以,在Python中使用SQLite,不需要安装任何东西,直接使用。

在使用SQLite前,我们先要搞清楚几个概念:

表是数据库中存放关系数据的集合,一个数据库里面通常都包含多个表,比如学生的表,班级的表,学校的表,等等。表和表之间通过外键关联。

要操作关系数据库,首先要连接到数据库,一个数据库连接称为Connection。

连接到数据库后,需要打开游标,称之为Cursor,通过Cursor执行SQL语句,然后,获得执行结果。

一、连接数据库

?

1

2

3

4

5

6

import sqlite3

#数据库名

db_name = "test.db"

#表名

table_name = "catalog"

conn = sqlite3.connect(db_name)

二、打开游标

rs = conn.cursor()

三、建表

?

1

2

3

4

5

6

sql = 'create table ' + table_name + ' (id varchar(20) primary key, pid integer, name varchar(10))'

try:

rs.execute(sql)

print("建表成功")

except:

print("建表失败")

四、增,删,改,查操作

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

# 增:增加三条记录

sql = "Insert into " + table_name + " values ('001', 1, '张三')"

try:

rs.execute(sql)

#提交事务

conn.commit()

print("插入成功")

except:

print("插入失败")

sql = "Insert into " + table_name + " values ('002', 2, '李四')"

try:

rs.execute(sql)

#提交事务

conn.commit()

print("插入成功")

except:

print("插入失败")

sql = "Insert into " + table_name + " values ('003', 3, '王五')"

try:

rs.execute(sql)

#提交事务

conn.commit()

print("插入成功")

except:

print("插入失败")

# 删:删除pid等于3的记录

sql = "Delete from " + table_name + " where pid = 3"

try:

rs.execute(sql)

conn.commit()

print("删除成功")

except:

print("删除失败")

# 改:将pid等于2的记录的pid改为1

sql = "Update " + table_name + " set pid = 1 where pid = 2"

try:

rs.execute(sql)

conn.commit()

print("修改成功")

except:

print("修改失败")

# 查

# 查询数据库中所有表名

sql = "Select name From sqlite_master where type = 'table'"

res = rs.execute(sql)

print(res.fetchall())

# 查询表中所有记录

sql = "Select * from " + table_name

try:

res = rs.execute(sql)

print(res.fetchall())

except:

print([])

五、关闭游标

rs.close()

六、关闭数据库连接

conn.close()

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持服务器之家!

原文链接:http://www.cnblogs.com/mayi0312/p/6668913.html

本文链接:https://my.lmcjl.com/post/14731.html

展开阅读全文

4 评论

留下您的评论.