【解決方案】數據庫創建和重新創建

很多人在寫數據庫軟件的時候,並未考慮周全。其實無法考慮周全,總在寫的時候,有那麼一些靈感,讓你改動數據庫結構。當你的軟件完工的時候,發現與最初的設計已經面目全非啦。

在寫軟件過程中,數據庫被改爛的問題常常發生,問題是爛了之後怎麼恢復?這裏有一招:
在你的軟件中創建一個初始化環境的功能,這其中就包括創建數據庫。

靈感來了,修改了數據庫結構,馬上在你的初始化代碼中修改:

List<String> tableList = new List<string>();
String tableString = @"
CREATE TABLE IF NOT EXISTS apis (
    id              INTEGER   PRIMARY KEY AUTOINCREMENT,
    api_id          INT       DEFAULT (0),
    api_class       CHAR (50),
    api_cmd         CHAR (50),
    api_description TEXT)";
tableList.Add(tableString);
//......
//所有的創建數據庫結構的SQL語句
//......
using (SQLiteConnection sQLiteConnection = new SQLiteConnection(SQLiteConnectionString))
{
    sQLiteConnection.Open();
    SQLiteCommand sQLiteCommand = new SQLiteCommand("", sQLiteConnection);
    foreach (String item in tableList)
    {
        sQLiteCommand.CommandText = item;
        sQLiteCommand.ExecuteNonQuery();
    }
}

這樣,你的軟件將不被現有的數據庫結構所限制,隨時可以初始化,而不在乎數據庫是否已經被你搞爛。

好啦,就到這裏,如果你有疑問,歡迎留言。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章