学习python中,涉及SQLite3数据库的操做,其中一种是使用sqlite shell,在园子里找到下面这篇文章,跟着试了下,挺好。
这里要注意,语句是C语言规范的吧,语句末尾须要“;”。
SQLite3基本使用从shell到python
SQLite 入门教程一 基本控制台(终端)命令html
D:\Python37\Tools\sqlite-tools-win32-x86-3260000>sqlite3 a.db SQLite version 3.26.0 2018-12-01 12:34:55 Enter ".help" for usage hints. sqlite> create table users(id integer primary key,name text,level integer); sqlite> insert into users(name,level) values('李斯',2); sqlite> insert into users(name,level) values('张三',4); sqlite> insert into users(name,level) values('王五',3); sqlite> .mode column sqlite> .headers on sqlite> select * from users; id name level ---------- ---------- ---------- 1 李斯 2 2 张三 4 3 王五 3 sqlite> update users set level=1 where name='李斯'; sqlite> select * from users; id name level ---------- ---------- ---------- 1 李斯 1 2 张三 4 3 王五 3 sqlite> delete from users where name='张三'; sqlite> select * from users; id name level ---------- ---------- ---------- 1 李斯 1 3 王五 3 sqlite>
模仿上面的规则和语法,在“Head First Python”第九章关于数据库部分的学习中,能够用下面的命令简单地查看数据库内容。结果发现数据表athletes中重复屡次地导入了运动员信息。😃python
D:\Python37\Tools\sqlite-tools-win32-x86-3260000>sqlite3 coachdata.sqlite SQLite version 3.26.0 2018-12-01 12:34:55 Enter ".help" for usage hints. sqlite> .mode column sqlite> .headers on sqlite> select * from timing_data; athlete_id value ---------- ---------- 1 2.01 1 2.16 1 2.22 1 2.34 1 2.45 1 3.01 1 3.10 1 3.21 2 2.11 2 2.23 2 2.59 2 3.01 2 3.02 2 3.10 2 3.21 3 2.22 3 2.31 3 2.38 3 2.40 3 2.49 3 3.01 3 3.02 3 3.22 4 2.18 4 2.21 4 2.22 4 2.25 4 2.39 4 2.54 4 2.55 4 2.58 sqlite> select * from athletes ...> ; id name dob ---------- ---------- ---------- 1 James Lee 2002-3-14 2 Julie Jone 2002-8-17 3 Mikey McMa 2002-2-24 4 Sarah Swee 2002-6-17 5 James Lee 2002-3-14 6 James Lee 2002-3-14 7 James Lee 2002-3-14 8 Julie Jone 2002-8-17 9 Mikey McMa 2002-2-24 10 Sarah Swee 2002-6-17 sqlite>