日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國(guó)內(nèi)最全I(xiàn)T社區(qū)平臺(tái) 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁(yè) > 數(shù)據(jù)庫(kù) > access > asp.net Insert into 語句的語法錯(cuò)誤

asp.net Insert into 語句的語法錯(cuò)誤

來源:程序員人生   發(fā)布時(shí)間:2013-11-10 16:21:04 閱讀次數(shù):2788次

  asp教程net insert into 語句的語法錯(cuò)誤的解決方法

  問題描述

  我用oledb的方式向access數(shù)據(jù)里寫數(shù)據(jù)示例源碼如下

  string sql="select * from multitable";

  oledbdataadapter olesub=new oledbdataadapter(sqlolecn);

  oledbcommandbuilder cb=new oledbcommandbuilder(olesub);

  dataset ds=new dataset();

  olesubfill(ds"multitable");

  datatable dt=dstables["multitable"];

  datarow dr=dtnewrow();

  dr["prserv"]="ws"+indextostring()padleft();

  dr["number"]="";

  

  dtrowsadd(dr);

  olesubupdate(ds"mulittable");

  這段代碼編譯的時(shí)候是沒有問題的但是在運(yùn)行的時(shí)候會(huì)報(bào)出一個(gè)運(yùn)行時(shí)錯(cuò)誤”insert into 語句的語法錯(cuò)誤“

  用oledbadapter的時(shí)候我并沒有指定insert語句而是用oledbcommandbuilder 來自動(dòng)產(chǎn)生insert 語句的仔細(xì)想了一下為什么會(huì)產(chǎn)生這個(gè)錯(cuò)誤呢?我的結(jié)論是可能這張表里的字段名使用了access系統(tǒng)的保留字于是我在access里創(chuàng)建了一個(gè)查詢自己寫了一個(gè)insert sql證實(shí)我的結(jié)論是正確的number是系統(tǒng)的一個(gè)保留字那怎么修改呢?

  一般來說最簡(jiǎn)單的方法就是改掉這個(gè)字段名換成非系統(tǒng)保留字的名字但是庫(kù)的結(jié)構(gòu)是客戶提供的不允許修改只有想別的辦法考慮以前的經(jīng)驗(yàn)操作accesssql server的時(shí)候如果表的字段中包含了系統(tǒng)的保留字的話我們?cè)谧侄瓮饧由戏嚼ㄌ?hào)就可以了比如 insert into tblmultitable(prserv[number]) values()就可以了可是從上面的代碼中我們看到并沒有什么地方我們可以指定insert 語句我想oledbcommandbuilder應(yīng)該是根據(jù)adapter使用的select語句自動(dòng)生成insert 語句的所以只要給select 語句中的字段加上方括號(hào)就可以了所以我作了如下的修改

  string sql="select prserv[number]priorrefgrantorgrantee from multitable";

  修改完畢以后測(cè)試以后仍然產(chǎn)生以前的"insert into 語句的語法錯(cuò)誤";問題會(huì)出在哪里呢?我想應(yīng)該還是在oledbcommanbuilder上一般來說只需要這樣用oledbcommanbuilder類就可了

  oledbdataadapter olesub=new oledbdataadapter(sqlolecn);

  oledbcommandbuilder cb=new oledbcommandbuilder(olesub);

  打開msdn看看oledbcommanbuilder的類成員發(fā)現(xiàn)兩個(gè)很關(guān)鍵的屬性quoteprefixquotesuffix;仔細(xì)想想oledb可以訪問的數(shù)據(jù)類型非常多啊所以關(guān)鍵字段的前綴后綴的處理方法肯定不盡相同比如訪問excel的時(shí)候表明應(yīng)該寫成[sheet$的方式]所以提供這樣一種方式是相當(dāng)靈活的接下來我再次修改代碼對(duì)這兩個(gè)屬性賦值

  oledbdataadapter olesub=new oledbdataadapter(sqlolecn);

  oledbcommandbuilder cb=new oledbcommandbuilder(olesub);

  cbquoteprefix="[";

  cbquotesuffix="]";

生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 一区二区日韩精品 | 青草一区| 色婷婷综合久久久中文字幕 | 天天天天干 | 综合国产视频 | 精品一级毛片 | 涩爱av一区二区三区 | 麻豆传媒在线播放 | 一区两区小视频 | 免费99视频 | 青青草福利视频 | a黄色片 | 精品99久久| 欧美精品黑人猛交高潮 | 国产99久久精品一区二区永久免费 | 久久av影院| 国产一区二区三区免费观看 | 伊人色婷婷 | 久久久久亚洲 | 精品一二三| 欧日韩在线观看 | 99国产精品久久 | 国产精品视频观看 | 亚州精品成人 | 黄且免费的视频 | 99精品国产免费久久久久久按摩 | 热99 | 久日av| 日韩国产中文字幕 | 污视频网站在线免费观看 | 欧美日韩在线一区 | wwwyoujizz日本| 欧美第一区 | 69视频在线播放 | 久久久久久久一区 | 成人免费福利 | 婷婷成人精品视频在线观看 | 国产一区二区三区在线免费观看 | 国产综合网站 | 国内精品在线播放 | 国产三级精品视频 |