2010-09-28 31 views
0

嗨,我只是上來的實踐計劃在C#中的讀,寫數據到Access數據庫,我有在寫入數據的問題Access數據庫雖然我」米能夠讀取數據,即fetchin'工作正常,但是當我插入數據我‘的ExecuteNonQuery’工作正常,我的意思是沒有NE錯誤,但在開放的Access數據庫中的數據是不存在....這裏是代碼是什麼米試着做...編寫C到MS-Access數據庫問題尖銳

 

     //// Function For ExecuteNonQuery 
     public static bool ExecuteNonQuery(string Query) 
     { 

      OleDbCommand oledbCommand = new OleDbCommand(Query, connection); 
      if (connection.State == ConnectionState.Open) 
       connection.Close(); 
      try 
      { 
       connection.Open(); 
       if (oledbCommand.ExecuteNonQuery() > 0) 
        return true; 
       else 
        return false; 
      } 
      catch (Exception) 
      { 
       return false; 
      } 
      finally 
      { 
       connection.Close(); 
      } 
     } 
 

這下面的代碼是添加數據,大幹快上發射的‘添加’按鈕按下

 

     private void btnAdd_Click(object sender, EventArgs e) 
     { 
      simOperator.aim_network_name = txtAimNetNm.Text; 
      simOperator.network_id = txtOxiNetID.Text; 
      simOperator.network_name = txtNetName.Text; 
      simOperator.pack_id = txtPackID.Text; 
      simOperator.pack_name = txtPackName.Text; 
      SimOperator.Add(simOperator); 
      fillText(); 
     } 
     public void fillText() 
     { 
      txtResult.Text = ""; 
      SimOperator[] simOperatorList = SimOperator.GetAllOperators(); 
      foreach (SimOperator sm in simOperatorList) 
      { 
       txtResult.Text += Program.operator_id + " " + sm.aim_network_name + " " + sm.network_name + " " + sm.network_id + " " + sm.pack_id + " " + sm.pack_name + "\r\n"; 
      } 
     } 
 

這裏的 「添加」 功能

 

      string Query = string.Format("insert into {0}({2}) values({1});", calledObject.Name, PropertyValue,PropertyName); 
      ExecuteNonQuery(Query); 
 

實際工作中的SQL查詢:

 
insert into SimOperator(aim_network_name,network_id,network_name,pack_id,pack_name) values('FiveNet','2563','FiveNet-Kurla','1236','5236'); 

呀和我的連接字符串

 

static OleDbConnection connection = new OleDbConnection(System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"]); 
 

App.config文件包含字符串作爲

沒有得到的東西是我把一個文本區域放在所有內部字段文本框旁邊,這樣我就可以看到插入的內容,所以當插入數據時,文本區域完美地顯示數據,但是當我打開訪問數據庫,然後theres沒有數據,當我關閉我的應用程序,我再次運行它,然後文本區域是空的...這聽起來很奇怪..任何一個外面都遇到過這種問題請幫助我在這裏..

回答

2

你在調試過程中嗎?在這種情況下,查看調試文件夾內是否有mdf文件,以及它是否包含剛纔插入的數據。當您在該模式下運行應用程序時,Vs會將某些文件複製到調試文件夾。如果我沒有記錯有調試

+0

斯特凡諾@ HM,是米調試模式做就行了,當是一個選項來告訴VS不要複製文件..我HV有關該選項debuggin時告訴不復制文件,nehw不知道我會檢查選項和thanx哥們,讓我們看看它的作品與否。 – FosterZ 2010-09-28 08:36:26

+0

Stefano @ hey調試文件夾內有一個.mdf文件,它包含數據..你能解釋我爲什麼會發生這種情況,我的意思是在調試文件夾中創建另一個mdf文件? – FosterZ 2010-09-28 08:39:55

+0

@FosterZ我想它恰好在開發過程中不會損壞數據。老實說,我不記得如何避免應對文件,嘗試選擇你的項目內的mdf文件(我想你已經將它添加到項目中),選擇屬性選項卡和(如果它存在)更改「複製本地」選項假 – 2010-09-28 09:22:30