字串回存時加 ' 符號 |
尚未結案
|
alvin2004
一般會員 發表:7 回覆:9 積分:3 註冊:2004-08-26 發送簡訊給我 |
請教各位先進:
我有一段寫入資料庫程式如下:
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add("update xx set x1 = '" Edit4->Text "'");
ADOQuery1->SQL->Add("where x2 ='" Edit1->Text "'");
ADOQuery1->Prepared = true;
ADOQuery1->ExecSQL();
Edit4->Text的值為--> kkk'
問題是只要有加 ' 存檔就會出現error,有辦法字串回存時加 ' 符號嗎?謝謝!!
|
nlj859
資深會員 發表:139 回覆:375 積分:322 註冊:2004-03-20 發送簡訊給我 |
Hello alvin2004, 請把'符號拿掉看看.
另外,請參考底下程式碼:
ADOQuery1->Close(); ADOQuery1->SQL->Clear(); ADOQuery1->SQL->Add("update DData set Currents =" Edit1->Text); ADOQuery1->SQL->Add("where Currents =" Edit4->Text); ADOQuery1->Prepared = true; ADOQuery1->ExecSQL(); 引言: 可是存入的字串可能是有含'符號譬如-->kkk' 也可能是不含譬如-->kkk 那遇到不含的話,可能就不行了.Sorry,上述field是以數字來儲存. 如果是文字的話,請用下列方式: ADOQuery1->Close(); ADOQuery1->SQL->Clear(); ADOQuery1->SQL->Add("update DData set Currents =\"" Edit1->Text "\""); ADOQuery1->SQL->Add("where Currents =\"" Edit4->Text "\""); ADOQuery1->Prepared = true; ADOQuery1->ExecSQL();發表人 - nlj859 於 2004/10/14 18:17:01 |
alvin2004
一般會員 發表:7 回覆:9 積分:3 註冊:2004-08-26 發送簡訊給我 |
|
andychang1690
資深會員 發表:20 回覆:694 積分:442 註冊:2003-03-14 發送簡訊給我 |
alvin2004:我剛開始使用PGSQL時我還異想天開的使用中文欄位, 為此我付出很大代價(因為它連中文存入欄位都有問題)! 但我也解決了一寫問題就是存檔時用自寫函數先檢查修正一遍! ADOQuery1->SQL->Add("update xx set x1 = '" Chk_Code( Edit4->Text) "'"); // /* 輸入資料中若含有 92:\ 34:" 39:' 前加92:\ */ // AnsiString Chk_Code(AnsiString Str) { AnsiString ret=""; int j=Str.Length(); int k; for(int i=1;i<=j;i ) { k=(int) Str[i]; if ( k == 92 || k == 34 || k == 39) ret =(char) 92; ret =Str[i]; } return (ret); } 其實上述函數是用於檢查中文第二碼是否屬於92:\ 34:" 39:' 若是第二碼前加92:我使用的原函數為: // /* 輸入資料中中文若含有 92:\ 34:" 39:' 前加92:\ */ // AnsiString Chk_CNCode(AnsiString Str) { AnsiString ret=""; int j=Str.Length(); int k; for(int i=1;i<=j;i ) { ret =Str[i]; if(Str[i]<0) { //如果小于0為中文 if ( i < j ) { i ; k=(int) Str[i]; //第二字節 if ( k == 92 || k == 34 || k == 39) ret =(char) 92; ret =Str[i]; } } } return (ret); } 請參考!Andy Chang
------
Andy Chang |
alvin2004
一般會員 發表:7 回覆:9 積分:3 註冊:2004-08-26 發送簡訊給我 |
|
alvin2004
一般會員 發表:7 回覆:9 積分:3 註冊:2004-08-26 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |