python基础学习笔记——Python基础教程(第2版 修订版)第13章(数据库支持)

#python数据库API

#全局变量
apilevel    #python DB API版本
threadsafety #模块线程安全等级 0表示线程完全不共享 3
paramstyle  #SQL查询的参数风格

#异常

¥连接和游标

#connect函数常用参数
dsn
user
password
host
database

#连接方法
close()
commit()
rollback()
cursor()

#游标对象
callproc(name[,params])
...

游标对象特性
description
rowcount
arraysize

#类型

Date(year,month,day)
..
ROWID

#数据库应用程序示例

#将数据导入数据库
import sqlite3
def convert(value):
      if value.startswith('~'):
         return value.strip('~‘)
      if not value:
         value='0'
      return float(value)

conn=sqlite3.connect(food.db')
curs=conn.cursor()

curs.execute('''
CREATE TABLE food(id  TEXT  PRIMARY KEY
                                water TEXT,
                                ...
                                )
                               ''')
query='INSERT INTO VALUES (?,?,...)'
for line in open ('ABBBREC.txt、):
      field=line.split('^')
      vals=【convert(f) for f in fields[:field_count]]
     curs.execute(qury,vala)
comm.commiy()
comm.close()


#查询程序
import sqlite3,sys
conn=sqlite3.connect(;food.db')
curs=conn.cursor()

qury=\SELECT * FROM WHERE %s‘ %sys.argv[1]
print query
curs.ececute(query)
names=[f【0】for f in curs.description]
for row in cura.fetchall()
   for pair in zip(names.row):
   print %s:%s %pair
 print

 

posted @ 2017-09-05 19:19  不可叽叽歪歪  阅读(131)  评论(0编辑  收藏  举报