DC学院学习笔记 (十):SQLite及MongoDB

本文介绍了SQL和NoSQL数据库的区别与应用场景,包括关系型数据库SQLite和非关系型数据库MongoDB的特点及基本操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

学习了这一课,了解到除了mysql还有其他的数据库,除了SQL还有nosql如moggoDB。

SQLite

最常用的情景是在手机或桌面的应用程序。

特点

  • 从名字就可以看出是一个轻量级的数据库
  • 文件型数据库
  • 常用于应用程序存储数据,比如浏览器存储用户的资料等
  • GUI: DB Browser for SQLite;访问SQLite就是访问一个文件,使用这个前端的程序来访问
  • Python:import sqlite3,来进行数据库的读取(不需要安装)

OK,下面来试一试吧!

准备

  1. 同样的,对于新手,我们需要一个前端的可视化程序,可以从这里下载:http://sqlitebrowser.org/
  2. 访问Kaggle-iris,下载整理好的iris的SQLite的数据集(访问这个需要科学上网
  3. 在DB Browser中打开iris sqllite格式的数据库

可以看一下,这个跟mysQL还是很像的。
image

看一下简单的示例代码,更详细的请看SQLite官方文档

import sqlite3
#通过sqlite3.connect连接文件数据库
conn=sqlite3.connect('C:\\Users\\Dell\\database.sqlite') ##路径+文件名
#用SQL语句选择数据,并返货结果,result 返回的是list结构
c=conn.cursor()

c.execute('select * from iris')

result=c.fetchone()  ##fetchall 就是只取出所有
print(result)

#如果需要返回的格式是Sqlite3.Row,需要在执行查询语句前加入一行代码
c.row_factory=sqlite3.Row
#虽然和Python的Dictionary结构有一定的差异,但是可以根据属性名称来进行index检索
(1, 5.1, 3.5, 1.4, 0.2, 'Iris-setosa')

MongoDB

随着数据存储需求的发展,非关系型数据库NoSQL拥有了越来越多的使用者,NoSQL并不是No-SQL,而是指Not Only SQL

非关系型数据库的特点

  • 没有固定的表结构
  • 避免使用join操作
  • NoSQL是基于键值对的,不需要经过SQL层的解析,性能较高

特点

  • NoSQL数据库,不使用SQL语句进行检索
  • MongoDB存储文件的类型类似于JSON格式
  • GUI:Robo 3T
  • Python:PyMongo,来进行数据库的读取(需要安装)

可以了解一下

#MongoDB插入记录
#db是数据库的名称;mycol是数据库中的表格名称,id,title,description,by,url是键,冒号后是属性的值;tag存储的是列表;like:还可以插入int型
db.mycol.insert({_id:ObjectId(增加内容),title:'___',description:'___',by:'___',url:'___',tags:['___',...],likes:___}]

#MongoDB查询
#OR代表了后面方括号里面语句的逻辑关系,这里是或的意思;pretty美化输出;
db.mycol.find({$or:[{"by":"tutorials point"},{"title":"MongoDB Overview"}]}).pretty()

果然跟JSON很像。。、

:”by”:”tutorials point”,如果对应成SQL语句则是:WHERE by=”tutorials point”

OK,数据库目前就了解这么多吧!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值