一、數據保存在txt文件中和數據庫中相比有什么利弊
這么小的數據量,完全不用考慮占用空間和讀寫速度哪個多哪個快的問題
使用數據庫的話你編程會簡便很多,比如你要檢索數據的話,使用數據庫就可以直接執行select語句來檢索,那么程序編碼會方便很多。而且你這個數據庫還可能中檢索的同時持續追加更多數據,數據庫會幫你做并發控制和事務處理,用文件存儲的話后續你一定需要手動處理這些問題,非常低效。
如果是設備上面運行db的話,建議使用mysql的嵌入式版本,因為sqlite的并發控制粒度太大,是全局鎖,也就是讀的時候不可以寫入,寫的時候不可以讀。如果是服務器上嗎的話必須使用mysql,sqlite也就適合客戶端程序內部簡單存取數據而已。
數據庫與文本文件的差異非常多; 但從使用來說最基本的差異: 文本文件主要是獨占使用;數據庫多用于共享使用;
上面是說文本文件主要是獨占使用,當然也可以共享訪問,在日常業務系統里面,配置文件與日志主要采用文本文件;
打開查看文本文件非常方便,不需要特別的軟件或者中間件;在Linux下;使用cat tail head等命令都可以方便查看,也可以用命令進行查找等;而數據庫的訪問都需要別的工具來輔助;
數據庫的查詢、統計、更新非常方便;例如查看每天8:00-9:00時間段的所有數據,或者只顯示統計信息等;還有索引、緩存、多用戶并發使用等功能。
延伸閱讀:
二、文件打開方式
文件的打開方式有下面這幾種:
r: 以只讀方式打開文件。文件的指針將會放在文件的開頭。默認打開方式。
rb: 以二進制只讀方式打開一個文件。文件指針放在文件的開頭。
r+: 以讀寫方式打開一個文件。文件指針會放在文件的開頭。
rb+: 以二進制讀寫方式打開一個文件。文件指針會放在文件的開頭。
w: 以寫入方式打開一個文件。如果文件存在,則覆蓋原文件。如果文件不存在,則新建文件。
wb: 以二進制寫入方式打開一個文件。如果文件存在,則覆蓋原文件。如果文件不存在,則新建文件。
w+: 以讀寫方式打開一個文件。如果文件存在,則覆蓋原文件。如果文件不存在,則新建文件。
wb+: 以二進制讀寫方式打開一個文件。如果文件存在,則覆蓋原文件。如果文件不存在,則新建文件。
a: 追加方式打開文件。如果文件存在,指針在文件末尾,新內容寫入到原有內容后面。如果文件不存在,創建新文件。
ab: 二進制追加方式打開文件。(同上)。
a+: 追加讀寫方式打開文件。如果文件存在,指針在文件末尾。如果文件不存在,創建新文件。
ab+: 二進制追加方式打開一個文件。(同上)。