Python3数据库模块(sqlite3,SQLite3)

时间:2022-12-12 14:33:38

一、sqlite命令

创建数据库:在控制台sqlite3 name

.databases     查看数据库

.tables            查看表格名

databaseName .dump > dumpName 将数据库存在文本文件dumpName中,恢复就用databaseName < dumpName;

attach database 'one' as 'other' 将两个数据库绑定在一起;

detach database 'name'             分离数据库;

.schema tableName                    查看表格详情;

create table name;                      创建表;

drop table name;                        删除表;

二、python3中的sqlite3模块

sqlite3.connect(database [,timeout ,other optional arguments])  打开数据库;如果指数据库存在则返回一个连接对象,如果不存在则会创建一个数据库;

connection.cursor()        创建一个cursor;

cursor.execute(sql)              执行一个sql语句,该语句可以被参数化;

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

cursor.executemany(sql,seq_of_parameters)     对 seq_of_parameters 中的所有参数或映射执行一个 SQL 命令

connection.executemany(sql,seq_of_parameters)     快捷方式;

cursor.executescript(sql_script)           该例程一旦接收到脚本,会执行多个 SQL 语句。它首先执行 COMMIT 语句,然后执行作为参数传入的 SQL 脚本。所有的 SQL 语句应该用分号(;)分隔

connection.executescript(sql_script)    快捷方式;

connection.total_changes()                返回自数据库连接打开以来被修改、插入或删除的数据库总行数;

connection.commit()                           交当前的事务。如果您未调用该方法,那么自您上一次调用 commit() 以来所做的任何动作对其他数据库连接来说是不可见的。

connection.rollback()                  回滚自上一次调用commit()以来对数据库所做的更改;

connection.close()                      关闭数据库连接。请注意,这不会自动调用 commit()。如果您之前未调用 commit() 方法,就直接关闭数据库连接,您所做的所有更改将全部丢失!

conncction.fetchmany([size=cursor.arraysize[) 该方法获取查询结果集中的下一行组,返回一个列表。当没有更多的可用的行时,则返回一个空的列表。该方法尝试获取由 size 参数指定的尽可能多的行。

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

补充:连接MySql数据库需用MySQLdb模块来连接;Access数据库用DAO或ADO模块进行连接