"Talk is cheap. Show me the code."
import sqlite3
db = r"D:\pyWork\test.db" #pyWork目录下test.db数据库文件
drp_tb_sql = "drop table if exists staff"
crt_tb_sql = """
create table if not exists staff(
id integer primary key autoincrement unique not null,
name varchar(100),
city varchar(100)
);
"""
#连接数据库
con = sqlite3.connect(db)
cur = con.cursor()
#创建表staff
cur.execute(drp_tb_sql)
cur.execute(crt_tb_sql)
#插入记录
insert_sql = "insert into staff (name,city) values (?,?)" #?为占位符
cur.execute(insert_sql,('Tom','New York'))
cur.execute(insert_sql,('Frank','Los Angeles'))
cur.execute(insert_sql,('Kate','Chicago'))
cur.execute(insert_sql,('Thomas','Houston'))
cur.execute(insert_sql,('Sam','Philadelphia'))
con.commit()
#查询记录
select_sql = "select * from staff"
cur.execute(select_sql)
#返回一个list,list中的对象类型为tuple(元组)
date_set = cur.fetchall()
for row in date_set:
print(row)
cur.close()
con.close()
【注】
1、Windows下使用sqlite3的方法:
解压后得到sqlite3.exe,放到D:\Program Files\Sqlite目录下,将目录加入环境变量即可。
连接数据库(如果不存在,则默认创建)
C:\Users\Tom\Desktop>sqlite3 my.db
退出数据库
sqlite>.exit
(或者sqlite>.quit)
2、从数据文件(逗号分隔符)导入sqlite库表的方法:
sqlite> .separator ","
sqlite> .import
注意,非SQL语句不需要分号结尾。