這幾天在寫手機軟體的時候,意外發現了一個不錯的小型資料庫:SQLite。在維基百科上的介紹如下:
SQLite是遵守ACID的關聯式資料庫管理系統,它包含在一個相對小的C庫中。它是D.RichardHipp建立的公有領域項目。
不像常見的客戶-伺服器範例,SQLite引擎不是個程序與之通信的獨立進程,而是連接到程序中成為它的一個主要部分。所以主要的通信協議是在程式語言內的直接API調用。這在消耗總量、延遲時間和整體簡單性上有積極的作用。整個資料庫(定義、表、索引和數據本身)都在宿主主機上存儲在一個單一的文件中。它的簡單的設計是通過在開始一個事務的時候鎖定整個數據文件而完成的。
呃....上面似乎有很多的大陸用語,勉強湊合著看吧。總之它是一個相當方便的可攜式資料庫,而它也支援.NET平台,Provider的下載請到下面的網址:
http://sqlite.phxsoftware.com/
另外,我在網路上找到一個不錯的管理工具,而且它竟然還是一個FireFox的外掛,這個外掛請到下面的網址下載:
https://addons.mozilla.org/zh-TW/firefox/addon/5817
如標題所言,本篇文章將用SQLite實作一個簡單的記帳軟體。
一開始先建立資料庫並新增兩個資料表,如下圖所示。
一個記錄金額,另一個資料表記錄消費的類型,例如飲食、加油、日用品、房租等等。
接下來增加三種消費類型,分別是飲食、加油、日用品這三種。
之後打開VS 2008,新增一個Windows Form專案。
然後新增一個實體資料模型,在資料來源上選擇SQLite Database File。
選擇前面建立好的資料庫檔案。
之後選擇前面建立好的account以及type這兩個資料表。
建立好的類別如下。
在「資料」→「加入新資料來源」加入account這個資料來源,待會在顯示資料時會用到。
在Form上新增下列元件:
DataGrid:取名為MoneyGridView。
ComboBox:取名為TypeComboBox。
MonthCalendar:取名為MoneyMonthCalendar。
2個TextBox:分別取名為MoneyTextBox以及DescTextBox。
Button:取名為AddBtn。
DataGrid的資料來源選擇前面新增的account這個資料來源。
之後再編輯資料行。
在Form上雙擊滑鼠,新增下列程式碼。
上面程式碼的功用在於把type資料表上的資料加到ComboBox上,並且顯示之前的帳目。
接下來新增按鈕的程式碼。
除此之外,在MonthCalendar的DataSelected這個Event加入下列程式碼。
這樣在點選日期的時候,就可以顯示所選日期的所有帳目資料。
執行畫面如下。
特別注意到,在DataGrid上的種類這個項目上只有顯示數字,在下一次的文章中會將這部份做修改,並且再新增其它的功能。
留言列表