-1

我开始从事从前任那里继承的 Java 项目。我是 SQL 新手,但 SQLite 用于在该系统中存储各种不同类型的数据。以前,我总是将这类信息存储在内部 Java 数据结构中(即用户名的 Hashmap 等)

我的问题是为什么 SQL 被认为是更好的选择?

4

2 回答 2

1

SQL 解决了许多本地编程语言无法解决的问题。这些对于特定应用程序可能并不重要。但是,这里有一些例子。

SQL 可以透明地处理磁盘和内存中的数据。它有一个表的概念,它是持久的并存储在磁盘上,但处理都可以在内存中(如果表已经加载到页面缓存中)。

SQL 在数据变大时无缝处理数据,同时管理内存和磁盘。

SQL 处理安全和授权。不必发明新方法。

SQL 确保事务的原子性,因此您不必担心在发生故障时对系统进行部分更新。

SQL 无缝地允许多个客户端访问相同的数据,而数据库负责处理并发问题。

SQL 可以轻松处理多种不同类型的实体以及组合它们所需的处理。

尽管不适用于 SQLite,但 SQL 通常利用多个处理器和多个磁盘——对应用程序透明。

但是,我必须强调,这并不意味着所有应用程序中的所有数据都应该存储在数据库中(尽管我确实倾向于那个方向)。您可能有一个根本不需要外部数据存储的应用程序。

于 2013-07-25T18:39:13.227 回答
0

SQLite 等外部数据库提供持久性,并允许您在应用程序的多个实例之间共享数据。

于 2013-07-25T18:26:56.570 回答