學習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>