出于某种原因,最近将写的程序中的数据库换成了 sqlite3.
最近出于某种需要将数据库换到 sqlite3,python 是自带 sqlite 的,不需要另外安装,但如果不是在 python 中使用,也可以去 sqlite 官网下载最新版,下载后解压,将你存放该文件的目录加入系统环境变量,即可运行。
但这里介绍的是 python 中使用 sqlite.
python 连接 sqlite3 的主要接口:
因为 python 自带 sqlite3 , 直接 import
- import sqlite3
- 1.sqlite3.connect(database [,timeout ,other optional arguments])
第一个参数 database 是文件路径名,如果只有文件名,默认是当前目录下,且如果文件不存在会自动创建一个数据库文件。
- 2.connection.cursor([cursorClass])
创建一个游标,与 mysql 数据库一样(大部分语法与 mysql 一样)。
- 3.cursor.execute(sql [, optional parameters])
前面是 sql 语句,后面可以是参数,sqlite3 支持两种类型占位符:问号、命名占位符。
例如:
- cursor.execute("insert into people values (?, ?)", (who, age))
- 4.connection.execute(sql [, optional parameters])
它实际是调用光标(cursor) 对象执行
- 5.cursor.executemany(sql, seq_of_parameters)
这里是对 sql_of_parameters,所有参数执行前面的 sql 语句,
- 6.connection.executemany(sql[, parameters])
参见前面的第 4 条
- 7.cursor.executescript(sql_script)
执行 sql 脚本
- 8.connection.executescript(sql_script)
参见第 4 条
- 9.connection.total_changes()
返回自数据库连接打开以来被修改、 插入或删除的数据库总行数
- 10.connection.commit()
提交当前的事务, 如果你不提交(commit), 在这之前你所做的所有修改,包括插入,删除,修改等对其它数据库来说是不可见的。
- 11.connection.rollback()
回滚自上一次调用 commit() 以来对数据库所做的更改
- 12.connection.close()
该方法关闭数据库连接。 请注意, 这不会自动调用 commit(), 相当于你之前所做的更改没保存。
- 13.cursor.fetchone()
该方法获取查询结果集中的下一行, 返回一个单一的列表, 当没有可用的数据时, 则返回 None, 实际使用时可能会返回 [(0,)].
- 14.cursor.fetchmany([size=cursor.arraysize])
该方法获取查询结果集中的下一行组, 返回一个列表。 当没有更多的可用的行时, 则返回一个空的列表。 该方
法尝试获取由 size 参数指定的尽可能多的行.
- 15.cursor.fetchall()
该例程获取查询结果集中所有(剩余) 的行, 返回一个列表。 当没有可用的行时, 则返回一个空的列表。
来源: http://www.bubuko.com/infodetail-1957181.html