关系型数据库入门的疑问: SQLite 定位是?

2021-01-23 17:28:47 +08:00
 fiveelementgid

主要是做.NET 开发,是不是没必要过一遍 SQLite,而是直接去从 Mysql/MarianDB 学起

6803 次点击
所在节点    数据库
75 条回复
Kiriri
2021-01-23 22:49:09 +08:00
客户端软件一般都会用到吧
fiveelementgid
2021-01-23 23:10:26 +08:00
@rbe
@opengps
@eason1874 大概明白了
@matrix67 就是非 C/S 架构吧
fiveelementgid
2021-01-23 23:14:49 +08:00
@matrix67 不是
@danielmiao
@Areym 不做桌面开发,溜了溜了
fiveelementgid
2021-01-23 23:18:14 +08:00
@seki EF Core.......还好吧,只是觉得该学学了
fiveelementgid
2021-01-23 23:21:50 +08:00
@seki EF Core.......还好吧,只是觉得该学学了
@janus77
@ferock 那为啥不直接用 json/XML/文件
fiveelementgid
2021-01-23 23:23:08 +08:00
@jing8956 SQL Server 要钱,Express 免费,但是不想整
fiveelementgid
2021-01-23 23:29:06 +08:00
@justforlook44444
@xarthur
@hoyixi
@nuistzhou
@SilenceLL 就是轻量级,一般只有小工具能用?那我直接上 Mariadb 好了
fiveelementgid
2021-01-23 23:33:47 +08:00
@h82258652 对,我主要是想准备面试(⊙_◎)
janus77
2021-01-23 23:44:13 +08:00
@fiveelementgid #25 同样的问题可以直接用在一切数据库上……这就是数据库(database)和 json/XML/文件的区别了啊, 可以储存更复杂,结构化的数据,支持加密,支持跨平台,性能不错,版本升级,等一切数据库该有的优势。
fiveelementgid
2021-01-24 00:14:48 +08:00
@janus77 也对,保留了数据库的 feature 同时也不会太笨重
lawler
2021-01-24 01:39:41 +08:00
定位是:嵌入式数据库。
手机端 app,桌面端软件等,服务端一般不需要。因为本身不具备完整数据库特性。单一数据库,单一线程,单一读写访问,不支持大数据,性能差强人意,但会看到同一个应用有非常多的 xx.db 文件来间提高性能,常见的,如几乎所有 Androidapp 都在使用,部分 iOSapp 在使用,及桌面端 qq 微信旺旺 chrome 等。几乎都是 sqlite 数据库。

不学的话,没什么大问题。缺少一种嵌入式解决方案而已。
no1xsyzy
2021-01-24 02:12:14 +08:00
跑一些(介于单元测试和集成测试之间的)测试时用(虽然这种情况称呼为单元测试也没人反对),反正大部分 ORM 会解决不同 SQL 方言的问题
权限要求极低,只需要能执行代码能访问文件就能运行

另一方面,你要记得一些弊端:
并发低(因为依赖文件的读写锁,跨线程等于全库加锁)
跨机器难(包括数据库单独机器和多服务器
无法缓存优化后的 SQL (未确认
40EaE5uJO3Xt1VVa
2021-01-24 08:55:01 +08:00
学,sqlite 再单机上应用很广
bthulu
2021-01-24 09:30:59 +08:00
@lawler 性能超强的好吧, 单机单线程甩 mysql 和 oracle 一条街
codehz
2021-01-24 10:15:05 +08:00
SQLite3 存大量数据根本不是问题,唯一的问题是只能单机用,所以只要没有水平扩展的需求,基本都能用 SQLite3 解决。。。
star7th
2021-01-24 10:16:28 +08:00
个人觉得 sqlite 是不需要专门花时间学的。如果会 mysql,学习了 sql 语法,基本上能举一反三大部分关系型数据库
tanghongkai
2021-01-24 10:58:10 +08:00
本地的小数据库用这个比较方便,比如 temphis.db
lancelock
2021-01-24 11:12:37 +08:00
你以为 sqlite 是 mysql 之类的前置条件吗?并不是,他们之间并没有依赖关系
tairan2006
2021-01-24 13:34:52 +08:00
客户端用的数据库
QBugHunter
2021-01-24 14:19:28 +08:00
SQLITE3 很好很强大,最大的优点就是不用部署,直接编译进程序里。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/747715

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX