成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Access數(shù)據(jù)庫無法更新的解決辦法

數(shù)據(jù)庫 其他數(shù)據(jù)庫
Access數(shù)據(jù)庫操作過程中可能會存在很多的問題,有時可能會遇到一寫故障,就比如Access數(shù)據(jù)庫無法更新,下文中就為大家詳解Access數(shù)據(jù)庫無法更新的解決辦法。

Access數(shù)據(jù)庫無法更新的解決辦法:

原來有誤的代碼:

  1.  StringBuilder strSql = new StringBuilder();  
  2.  
  3.   strSql.Append("update news_Table set ");  
  4.  
  5.   strSql.Append("NewsTitle=@NewsTitle,");  
  6.  
  7.   strSql.Append("NewsContent=@NewsContent,");  
  8.  
  9.   strSql.Append("NewsReporter=@NewsReporter");  
  10.  
  11.   strSql.Append(" where NewsID=@NewsID ");  
  12.  
  13.   OleDbParameter[] parameters = {  
  14.  
  15.   new OleDbParameter("@NewsID", OleDbType.Integer,4),  
  16.  
  17.   new OleDbParameter("@NewsTitle", OleDbType.VarChar),  
  18.  
  19.   new OleDbParameter("@NewsContent", OleDbType.VarChar),  
  20.  
  21.   new OleDbParameter("@NewsReporter", OleDbType.VarChar)};  
  22.  
  23.   parameters[0].Value = model.NewsID;  
  24.  
  25.   parameters[1].Value = model.NewsTitle;  
  26.  
  27.   parameters[2].Value = model.NewsContent;  
  28.  
  29.   parameters[3].Value = model.NewsReporter;  
  30.  
  31.   return DbHelperOleDb.ExecuteSql(strSql.ToString(), parameters);  
  32.  

因為這個代碼是使用動軟代碼生成器自動生成的,所以我可以肯定代碼是無誤的,可是問題出在我修改了參數(shù),自動生成的代碼里包含可以更新ID,我數(shù)據(jù)庫里的ID是自動增長的,所以不能更新,我也就直接刪除了ID,變成上面的錯誤代碼。就這樣,問題就出來啦,不管我如何調(diào)試,都無濟于事,始終不能更新到數(shù)據(jù)庫。

在琢磨很久之后,換成更加不同的方式來更新數(shù)據(jù)庫,也就是不使用@傳參數(shù),直接使用++方式的代碼。

++方式的代碼:

  1.  string strSql;  
  2.  
  3.   strSql="update news_Table  
  4.  
  5.   set NewsTitle='"+model.NewsTitle+"',NewsContent='"+model.NewsContent+"',NewsReporter='"+  
  6.  
  7.   model.NewsReporter+"' where NewsID="+model.NewsID;  
  8.  
  9.   return DbHelperOleDb.ExecuteSql(strSql);  
  10.  

使用這種方式可以很順利的更新數(shù)據(jù)庫里的數(shù)據(jù)。

這樣的結(jié)果讓我很抓狂。我不知道該怎么辦好,我想不通為什么傳參數(shù)的方式不行,但是直接寫的方式就可以。接著就是我瘋狂地在Google上搜索的這方面的資料,但是搜到這方面和我同樣的問題的日志不多。但是還是有解決這個問題的解決方案,那就是參數(shù)賦值順序和傳入的時候一致,下面貼出正確的代碼:

正確傳參數(shù)的代碼:

  1.  StringBuilder strSql = new StringBuilder();  
  2.  
  3.   strSql.Append("update news_Table set ");  
  4.  
  5.   strSql.Append("NewsTitle=@NewsTitle,");  
  6.  
  7.   strSql.Append("NewsContent=@NewsContent,");  
  8.  
  9.   strSql.Append("NewsReporter=@NewsReporter");  
  10.  
  11.   strSql.Append(" where NewsID=@NewsID ");  
  12.  
  13.   OleDbParameter[] parameters = {  
  14.  
  15.   new OleDbParameter("@NewsTitle", OleDbType.VarChar),  
  16.  
  17.   new OleDbParameter("@NewsContent", OleDbType.VarChar),  
  18.  
  19.   new OleDbParameter("@NewsReporter", OleDbType.VarChar),  
  20.  
  21.   new OleDbParameter("@NewsID", OleDbType.Integer,4)};  
  22.  
  23.   parameters[0].Value = model.NewsTitle;  
  24.  
  25.   parameters[1].Value = model.NewsContent;  
  26.  
  27.   parameters[2].Value = model.NewsReporter;  
  28.  
  29.   parameters[3].Value = model.NewsID;  
  30.  
  31.   return DbHelperOleDb.ExecuteSql(strSql.ToString(), parameters);  
  32.  

只是參數(shù)順序改變了一下就可以正常更新Access數(shù)據(jù)庫啦,也許這應該是Access的一個Bug吧,也許Access本來就如此,比MSSQL語法要嚴格。

總結(jié)

Access和MSSQL還是有不同的,不能夠一味的按照MSSQL的方式去解決Access上的問題,只是有一些相同。通過上文中的介紹,大家在以后遇到類似問題,就能夠輕松解決了。

【編輯推薦】

  1. Access數(shù)據(jù)庫4種安全方式
  2. 詳解Access數(shù)據(jù)庫管理密碼方法
  3. 將mysql數(shù)據(jù)導入access數(shù)據(jù)庫
  4. 如何將文本文件轉(zhuǎn)換為ACCESS數(shù)據(jù)庫
  5. 如何使用Access數(shù)據(jù)庫壓縮文件
責任編輯:迎迎 來源: 比特網(wǎng)
相關(guān)推薦

2011-07-06 14:09:40

ASP

2011-03-31 14:14:37

SQL Server 數(shù)據(jù)庫批量更新

2010-08-09 09:46:40

2010-08-25 11:19:23

DB2數(shù)據(jù)庫

2013-03-01 15:25:56

路由器網(wǎng)絡設備故障備分設備數(shù)據(jù)

2010-12-21 10:54:01

Linux漢字亂碼

2010-03-04 09:01:12

Windows 7隱藏開始菜單

2009-08-21 10:28:34

Ubuntu應用程序解決辦法

2010-06-18 09:31:51

SQL Server數(shù)

2009-06-03 16:41:21

Eclipse亂碼Eclipse

2011-03-04 13:07:47

Filezilla

2010-03-03 13:24:08

連接Windows遠程

2021-10-10 22:10:47

手機開機電池

2013-08-13 11:34:26

2011-01-19 17:54:48

2009-05-31 09:07:35

Oracle鎖定

2011-06-17 11:10:51

Qt 中文 輸出

2011-08-01 14:26:01

數(shù)據(jù)庫SUSPECT

2009-12-07 18:38:16

WCF異常

2011-03-22 16:31:35

Access數(shù)據(jù)庫
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 久久一区 | 久久久久国产精品免费免费搜索 | 一级黄在线观看 | 亚洲精品黄色 | 国产精品美女在线观看 | 亚洲人人 | 九九伊人sl水蜜桃色推荐 | 国产精品一区二区视频 | 国产精品视频综合 | 亚洲午夜三级 | 日韩国产中文字幕 | 国产精品久久av | 91一区二区 | 国产欧美一区二区精品久导航 | 国产成人精品在线 | 欧美日韩精品中文字幕 | 欧美区在线 | 欧美激情黄色 | 欧美午夜影院 | 国产中文字幕网 | 天天人人精品 | 国产精品久久久久久久7电影 | 久久精品国产免费 | 亚洲一区日韩 | 国产精品一区在线观看 | 91免费视频观看 | 国产精品精品视频一区二区三区 | 日韩在线资源 | 国产成人免费在线 | 九色.com| 日本天天操 | 欧美二区三区 | 狠狠操狠狠操 | 欧洲亚洲一区 | 天天澡天天操 | 婷婷综合网 | 亚洲视频免费 | 国产欧美一区二区三区在线播放 | 欧美亚洲国语精品一区二区 | 91高清视频 | 麻豆精品国产免费 |