2010-05-03 116 views
1

我在學習SQL來存儲數據而不是讀取文件並在內存中填充整個數據結構。它會像從磁盤讀取數據而不是直接存儲器?將數據保存在內存或sql數據庫

+1

請給這個問題一些C++內容,否則刪除C++標記。 – 2010-05-03 14:41:59

+0

你需要給這個問題更多的上下文。 – 2010-05-03 14:46:12

+0

知道您使用哪個數據庫管理器將會很有用。 – 2010-05-03 14:49:30

回答

2

SQL是一種微積分語言 - 你告訴你的數據庫管理員你想要它做什麼,它會找出最有效的方法來做到這一點。它將從磁盤讀取,但如果您足夠訪問某些信息,則會將該數據緩存在內存中並從內存中讀取。如果你更多地訪問某些東西,一個聰明的RDBMS會計算出這些部分,並將這些部分存儲在內存中,並將剩餘的部分留在磁盤上。你不必擔心它從哪裏獲取信息,只要知道它是持久的。

-1

是的,SQL更像是讀寫磁盤文件。

1

正如你所說,使用數據庫有點像從磁盤讀取數據,而不是直接從內存中讀取數據。許多數據庫提供了一種使用SQL來指導數據庫使用什麼標準來搜索數據的方法。然而,與使用文件來存儲數據不同,您通常需要做更多的工作來告訴數據庫您希望如何存儲數據,您想要創建哪些索引(數據庫使用索引來加快檢索速度數據庫提供了某些關鍵的好處,包括原子事務(即所有數據庫操作(讀取,寫入,插入,刪除),這些操作被分組在一起一個事務全部成功或者全部失敗,從而簡化事情(如果事情出錯),安全性(您或您的數據庫管理員可以指定哪些用戶可以訪問各種數據)以及多用戶併發性(多個用戶可以以最小的干擾同時訪問和更改數據)。對於涉及大量數據的大型項目,數據庫的使用非常普遍,甚至小型項目也可以從使用數據庫中受益。

分享和享受。