Chinaunix首页 | 论坛 | 博客
  • 博客访问: 792430
  • 博文数量: 108
  • 博客积分: 2887
  • 博客等级: 少校
  • 技术积分: 1570
  • 用 户 组: 普通用户
  • 注册时间: 2010-11-28 07:51
文章分类

全部博文(108)

文章存档

2012年(4)

2011年(86)

2010年(18)

分类: Python/Ruby

2011-04-16 21:43:53

SQLite是个轻便的数据库,不太适合网络环境,但是使用还是很方便的。它是一个嵌入式数据库,没有服务器的概念,windows版的就是一个exe,自己把它放到一个合适的目录里,然后把这个目录加入系统的path变量.
下面介绍怎么用python连接sqlite数据库。
【1】先到sqlite的官方网站上下载sqlite3
     地址是:,选择好合适的版本之后,下载解压缩,就是一个文件,名称是sqlite3.exe,把这个文件放到python的目录里。
【2】下载python与sqlite3的接口pysqlite,windows版本的下载地址是:
  
   下载完成后安装默认即可。
【3】注意:中文处理要注意的是sqlite默认以utf-8编码存储。
下面写一个脚本测试sqlite和pysqlite是否正常工作。
import pysqlite2.dbapi2 as sqlite
    
def runTest():
    cx 
= sqlite.connect('test.db')
    cu 
= cx.cursor()
    
    
#create
    cu.execute('''create table catalog(
        id integer primary key,
        pid integer,
        name varchar(10) unique
        )
''')

    
#insert
    cu.execute('insert into catalog values(0,0,"zrp")')
    cu.execute(
'insert into catalog values(1,0,"hello")')
    cx.commit()
    
    
#select
    cu.execute('select * from catalog')
    
print '1:',
    
print cu.rowcount
    rs 
= cu.fetchmany(1)
    
print '2:',
    
print rs
    rs 
= cu.fetchall()
    
print '3:',
    
print rs
    
    
#delete
    cu.execute('delete from catalog where id = 1 ')
    cx.commit()
    
    
    cu.execute(
'select * from catalog')
    rs 
= cu.fetchall()
    
print '4:',
    
print rs
    
    
#select count
    cu.execute("select count(*) from catalog")
    rs 
= cu.fetchone()
    
print '5:',
    
print rs
    
    
    cu.execute(
"select * from catalog")
    cu.execute(
'drop table catalog')

if __name__ == '__main__':
    runTest()
 
保存为一个脚本,运行之后,目录下会自动生成一个test.db的文件。
阅读(850) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~