BDE轉ADO的問題~~ |
答題得分者是:P.D.
|
SianJhihCiou
一般會員 發表:3 回覆:4 積分:1 註冊:2007-06-12 發送簡訊給我 |
有個BDE轉ADO的問題想請教各位前輩~
某資料表欄位 NAME Char(20) NULL BDE連結: Database元件 Query元件 DataSetProvider元件 ClientDataSet元件(取名:cdsBDE) ADO連結: ADOConnection元件 ADOQuery元件 DataSetProvider元件 ClientDataSet元件(取名:cdsADO) NAME欄位的資料為"張三",使用ClientDataSet元件取值如下: 1. cdsBDE->FieldByName("NAME")->AsString 得到 "張三" 2. cdsADO->FieldByName("NAME")->AsString 得到 "張三 " 使用BDE連結會自動去除張三後面的空白 但改用ADO連結時卻不會自動去除張三後面的空白 請教各位前輩們,這狀況有解嗎?? 謝謝~~
------
SianJhihCiou 編輯記錄
SianJhihCiou 重新編輯於 2010-07-17 11:55:50, 註解 無‧
|
P.D.
版主 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
|
SianJhihCiou
一般會員 發表:3 回覆:4 積分:1 註冊:2007-06-12 發送簡訊給我 |
感謝P.D.的寶貴意見~~
這事情順利解決了 必須使用 varchar 或 nvarchar 才能去掉空白~ 將資料型態變更後還必須再對資料做去除空白的動作 其原始的資料才能去掉空白 1. alter table xxx alter column Name varchar(20) null; 或是直接使用SQL Server管理介面變更型態 2. ADOQuery->Close(); ADOQuery->SQL->Clear(); ADOQuery->SQL->Text="Select * From xxx"; ADOQuery->Open(); while(!ADOQuery->Eof) { ADOQuery->Edit(); ADOQuery->FieldByName("Name")->AsString=ADOQuery->FieldByName("Name")->AsString.Trim(); ADOQuery->Post(); ADOQuery->Next(); }
------
SianJhihCiou |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |