我對 sql/資料庫非常陌生。所以我有很多資料。按日期排序,過去 22 年(約 8000 天)的每一天都有多個條目。
我的解決方案是為每個日期創建一個新表并在其中寫入條目。例如。
表 - 2020-10-23:
| 第 1 行 | 第 2 行 | 第 3 行 | 第 4 行 |
|---|---|---|---|
| 1 | 文本 | 文本 | 文本 |
| 2 | 文本 | 文本 | 文本 |
| 3 | 文本 | 文本 | 文本 |
| . | . | . | . |
| . | . | . | . |
| 1000 | 文本 | 文本 | 文本 |
表 - 2020-10-24:
| 第 1 行 | 第 2 行 | 第 3 行 | 第 4 行 |
|---|---|---|---|
| 1 | 文本 | 文本 | 文本 |
| 2 | 文本 | 文本 | 文本 |
| 3 | 文本 | 文本 | 文本 |
| . | . | . | . |
| . | . | . | . |
| 1000 | 文本 | 文本 | 文本 |
像這樣,大約有 8000 個表,每個表大約有 800 個條目。所以大約有 600 萬個條目。
所以我想問的第一件事是這是否是一個可行的解決方案,因為我需要在同一個資料庫中為用戶資料、身份驗證等創建更多表。
第二件事是 SQLite 是否是合適的資料庫。
uj5u.com熱心網友回復:
您不需要為每一天創建表格。您需要查看需要存盤的內容。由于您沒有提供任何背景關系資訊,我將只為您提供可以附加到實際資料的一般指南。如果事情不清楚,那么您將需要解釋您想要存盤的內容。
因此,作為一般規則,每個物體的單個值都被視為屬性。無論是復合的,都應該被視為一個單獨的物體型別。您需要通過確保您的資料庫處于正常形式來防止不一致和冗余。如果您的資料是相互關聯的,并且在邏輯上為每條記錄描述了一個物體,那么您現在將擁有一個表,其中包含一個日期欄位和一堆其他欄位。如果由于不一致和冗余而將所有內容存盤到單個表中不是一種可行的方法,那么您將需要將表分解為更多表。
您的圖片表明這些列是行。這可能是計劃錯誤的跡象。
在現代RDBMS工具的情況下,8000 * k(其中 k 平均小于 1000)記錄并不多。
當您select記錄時,您可以按天過濾/分組,實作您可以使用您擁有的不同表格實作的行為。
是否使用 SQLite 由您決定。然而,SQLite 是一個輕量級的 SQL 工具,如果你想變得專業,你可能想切換到其他的東西,比如 MySQL、Oracle、SQL Server 或 PostgreSQL。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/410120.html
標籤:
