python Sqlite3的使用

Python使用SQLite

1.sqlite3的安装

python2.5.x以上版本默认自带sqlite3模块。

2.链接sqlite3数据库

```
# 导入sqlite3模块
import sqlite3

# 创建链接对象
# 打开一个到 SQLite 数据库文件 db.sqlite3 的链接
# 如果该数据库不存在则会自动创建,可以指定带有文件路径的文件名
conn = sqlite3.connect('db.sqlite3')
```

3.获取游标对象

```
# 获取游标对象用来操作数据库
cursor = conn.cursor()
```

4.操作sqlite数据库

* 创建表
    ```
    # 插入user表
    # id int型 主键自增
    # name varchar型 最大长度20 不能为空
    cursor.execute('''create table user(id integer primary key autoincrement,name varchar(20) not null)''')
    ```
* 插入记录
    ```
    # 插入一条id=1 name='xiaoqiang'的记录
    cursor.execute('''insert into user(id,name) values(1,'xiaoqiang')''')
    ```
* 查找记录
    ```
    # 查找user表中id=1的记录
    cursor.execute('''select * from user where id=1''')
    # 获得结果
    values = cursor.fetchall()
    values
    [(u'1', u'Michael')]
    ```
* 删除记录
    ```
    # 删除id=1的记录
    sursor.excute('''delete from user where id=1''')
    ```
* 修改记录
    ```
    # 修改id=1记录中的name为xiaoming
    sursor.excute('''update user set name='xiaoming' where id=1''')
    ```

5.提交事务关闭数据库

前面的修改只是将数据缓存在内存中并没有正真的写入数据库,需要提交事务才能将数据写入数据库
操作完后要确保打开的Connection对象和Cursor对象都正确地被关闭,否则,资源就会泄露。
```
# 修改id=1记录中的name为xiaoming
sursor.excute('''update user set name='xiaoming' where id=1''')
# 提交事务
conn.commit()
# 关闭链接
conn.close()
```

推荐阅读更多精彩内容