001.操作sqlite创建表
1. sqlite3数据库
- 开源的轻量级数据库,占用资源少
- 是遵守ACID的关系数据库管理系统
- 不进行类型检查,可以将字符串插入到整数列中
- sqlite整个数据库都存储在一个单一的文件当中,事物通过锁定整个数据文件而完成
- sqlite引擎是在编程语言中直接调用API来实现,所以内存消耗低,延迟时间短,整体结构简单
2. sqlite3模块
Column 1 | Column 2 |
---|
sqlite3.version | 常量,版本号 |
sqlite3.connect(database) | 函数,连接到数据库 |
sqlite3.Connect | 数据库连接对象 |
sqlite3.Cursor | 游标对象 |
sqlite3.Row | 行对象 |
- connect() 提供了以下方法:
- .cursor()方法用来创建一个游标对象
- .commit()方法用来处理事务提交
- .rollback()方法来处理事务回滚:撤消当前事务中做的所有更改,并释放此连接对象当前使用的任何数据库锁。只有在禁用自动提交模式时才应使用此方法。
- .close()方法关闭一个数据库连接
- connect()的两个常用参数:
- database: 表示要访问的数据库名
- timeout:表示访问数据的超时设定
- Cursor查询数据库的4中方法:
方法 | 功能 |
---|
cur.execute(sql) | 执行sql语句 |
cur.execute(sql, param) | 执行带参数的sql语句 |
cur.executemany(sql, seq_of_param) | 根据参数执行多次sql语句 |
cur.executescript(sql_script) | 执行sql脚本 |
- 可以直接使用Connect对象的execute、executemany、executescript方法执行sql语句
- 原理: 相当于一个快捷方式,系统会自动创建一个Cursor对象,调用对应的方法,返回Cursor对象 - 获取游标的查询结果集

3. 访问数据库的一般步骤
- 导入模块
- 建立数据库连接, 返回连接对象
- 创建游标对象
- 执行sql语句,返回结果
- 获取游标的查询结果集
- 数据库的提交和回滚
- 关闭Cursor对象和Connect对象
4.操作sqlite创建表的步骤和代码
"""
1. 导入模块
2. 创建连接 sqlite3.connect()
3. 创建游标对象
4. 编写创建表的sql语句
5. 执行sql创建表
6. 关闭游标和连接
"""
import sqlite3
con = sqlite3.connect('E://Postgraduate//004.Python//001.Code//DBMS//sqlite3_demo//demo.db')
print(con)
cur = con.cursor()
sql = '''create table t_person(
pno INTEGER primary key autoincrement,
pname VARCHAR not null,
age INTEGER)'''
try:
cur.execute(sql)
print('创建表成功')
except Exception as e:
print(e)
print('创建表失败')
finally:
cur.close()
con.close()