数据库实践

1.数据库学习笔记python

 SQLite3 可以使用 sqlite3 模块与 Python 进行集成,通常 python 2.5 以上版本默认自带了sqlite3模块,所以不须要用户另外下载。sql

 若是把python 和数据库比做两个不一样的地点, connection 就是路, 能链接python和database。cursor就像在路上行驶的小货车, 能够用于执行sql 语句, 以及存储sql 运行的结果数据库

序号 API & 描述
1 sqlite3.connect(database [,timeout ,other optional arguments])

该 API 打开一个到 SQLite 数据库文件 database 的连接。您可使用 ":memory:" 来在 RAM 中打开一个到 database 的数据库链接,而不是在磁盘上打开。若是数据库成功打开,则返回一个链接对象。编程

当一个数据库被多个链接访问,且其中一个修改了数据库,此时 SQLite 数据库被锁定,直到事务提交。timeout 参数表示链接等待锁定的持续时间,直到发生异常断开链接。timeout 参数默认是 5.0(5 秒)。学习

若是给定的数据库名称 filename 不存在,则该调用将建立一个数据库。若是您不想在当前目录中建立数据库,那么您能够指定带有路径的文件名,这样您就能在任意地方建立数据库。fetch

2 connection.cursor([cursorClass])

该例程建立一个 cursor,将在 Python 数据库编程中用到。该方法接受一个单一的可选的参数 cursorClass。若是提供了该参数,则它必须是一个扩展自 sqlite3.Cursor 的自定义的 cursor 类。code

3 cursor.execute(sql [, optional parameters])

该例程执行一个 SQL 语句。该 SQL 语句能够被参数化(即便用占位符代替 SQL 文本)。sqlite3 模块支持两种类型的占位符:问号和命名占位符(命名样式)。sqlite

例如:cursor.execute("insert into people values (?, ?)", (who, age))对象

4 connection.execute(sql [, optional parameters])

该例程是上面执行的由光标(cursor)对象提供的方法的快捷方式,它经过调用光标(cursor)方法建立了一个中间的光标对象,而后经过给定的参数调用光标的 execute 方法。blog

5 cursor.executemany(sql, seq_of_parameters)

该例程对 seq_of_parameters 中的全部参数或映射执行一个 SQL 命令。

6 connection.executemany(sql[, parameters])

该例程是一个由调用光标(cursor)方法建立的中间的光标对象的快捷方式,而后经过给定的参数调用光标的 executemany 方法。

7 cursor.executescript(sql_script)

该例程一旦接收到脚本,会执行多个 SQL 语句。它首先执行 COMMIT 语句,而后执行做为参数传入的 SQL 脚本。全部的 SQL 语句应该用分号(;)分隔。

8 connection.executescript(sql_script)

该例程是一个由调用光标(cursor)方法建立的中间的光标对象的快捷方式,而后经过给定的参数调用光标的 executescript 方法。

9 connection.total_changes()

该例程返回自数据库链接打开以来被修改、插入或删除的数据库总行数。

10 connection.commit()

该方法提交当前的事务。若是您未调用该方法,那么自您上一次调用 commit() 以来所作的任何动做对其余数据库链接来讲是不可见的。

11 connection.rollback()

该方法回滚自上一次调用 commit() 以来对数据库所作的更改。

12 connection.close()

该方法关闭数据库链接。请注意,这不会自动调用 commit()。若是您以前未调用 commit() 方法,就直接关闭数据库链接,您所作的全部更改将所有丢失!

13 cursor.fetchone()

该方法获取查询结果集中的下一行,返回一个单一的序列,当没有更多可用的数据时,则返回 None。

14 cursor.fetchmany([size=cursor.arraysize])

该方法获取查询结果集中的下一行组,返回一个列表。当没有更多的可用的行时,则返回一个空的列表。该方法尝试获取由 size 参数指定的尽量多的行。

15 cursor.fetchall()

该例程获取查询结果集中全部(剩余)的行,返回一个列表。当没有可用的行时,则返回一个空的列表。

首先要建立一个数据库的链接对象,即connection对象,语法以下:

sqlite3.connect(database [,timeout,其余可选参数])

有了connection对象,就能建立游标对象了,即cursor对象,以下:

connection.cursor([cursorClass])

 function: 建立一个游标,返回游标对象,该游标将在Python的整个数据库编程中使用。

相关文章
相关标签/搜索