SQLite的学习

Posted 正哥哥的自习室

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQLite的学习相关的知识,希望对你有一定的参考价值。

今天我们看一下数据库的内容

SQLite

其实前两天做 Django项目的时候就说到过,Python自带SQLite数据库,我们今天也主要学它,等待后面具体学数据库的时候再看mysql 直接看代码吧,代码包含了几乎所有的内容

 
   
   
 
  1. # -*- coding: utf-8 -*-

  2. import os, sqlite3

  3. db_file = os.path.join(os.path.dirname(__file__), 'test.db')

  4. if os.path.isfile(db_file):

  5.    os.remove(db_file)

  6. # 初始数据:

  7. conn = sqlite3.connect(db_file)

  8. cursor = conn.cursor()

  9. cursor.execute('create table user(id varchar(20) primary key, name varchar(20), score int)')

  10. cursor.execute(r"insert into user values ('A-001', 'Adam', 95)")

  11. cursor.execute(r"insert into user values ('A-002', 'Bart', 62)")

  12. cursor.execute(r"insert into user values ('A-003', 'Lisa', 78)")

  13. cursor.close()

  14. conn.commit()

  15. conn.close()

  16. def get_score_in(low, high):

  17.    ' 返回指定分数区间的名字,按分数从低到高排序 '

  18.    conn=sqlite3.connect('test.db')

  19.    cursor=conn.cursor()

  20.    cursor.execute('select * from user where score<=? and score>=? order by score',( high ,low))

  21.    values=cursor.fetchall()

  22.    cursor.close()

  23.    conn.commit()

  24.    conn.close()

  25.    result=[]

  26.    for i in values:

  27.        result.append(i[1])

  28.    return result

  29. # 测试:

  30. assert get_score_in(80, 95) == ['Adam'], get_score_in(80, 95)

  31. assert get_score_in(60, 80) == ['Bart', 'Lisa'], get_score_in(60, 80)

  32. assert get_score_in(60, 100) == ['Bart', 'Lisa', 'Adam'], get_score_in(60, 100)

  33. print('Pass')

没错这是个题目啦。从初始数据中我们可以学习到插入数据的方法, ''内的都是SQL语句 用 fetchall查询结果。这里要注意的是,即使是在控制台,也要及时关闭数据库 connection,不然在test的时候会报错!


以上是关于SQLite的学习的主要内容,如果未能解决你的问题,请参考以下文章

java.lang.NullPointerException: Attempt to invoke virtual method ‘int android.database.sqlite异常(代码片段

当我从用户获取数据并将其保存到 SQLite 数据库中时,我应该怎么做才能使列表视图在片段中工作

SQLite 片段函数实现不会在 TextView 中将文本格式化为 HTML

如果我想从另一个片段中添加书签,为啥我的书签单词没有保存到 sqlite 数据库?

Android 逆向使用 DB Browser 查看并修改 SQLite 数据库 ( 从 Android 应用数据目录中拷贝数据库文件 | 使用 DB Browser 工具查看数据块文件 )(代码片段

Android 逆向使用 DB Browser 查看并修改 SQLite 数据库 ( 从 Android 应用数据目录中拷贝数据库文件 | 使用 DB Browser 工具查看数据块文件 )(代码片段