pb連access模糊查找用like '%aa%'為什么sqldbcode=3,
uj5u.com熱心網友回復:
sqlerrtext=""uj5u.com熱心網友回復:
sqlcode是多少,有沒有sqlerrtext呢?sqldbcode是dbms的回傳值,判斷是否錯誤的話應查sqlcode,如果回傳多條記錄的話sqldbcode肯定會有非零值的~~uj5u.com熱心網友回復:
把具體的sql發來看看uj5u.com熱心網友回復:
as_text="'%"+as_text+"%'"DECLARE cur_day CURSOR FOR
select truework,id from everydaywork
where
//plan like :as_text
truework like :as_text
//or problem like :as_text
//or nextplan like :as_text
//or content like :as_text
order by startdate desc;
OPEN cur_day ;
DO WHILE sqlca.SQLCode = 0
FETCH cur_day Into :ls_content,:ll_id;
IF sqlca.SQLCode <> 0 THEN
EXIT
END IF
dw_2.insertrow( 0)
dw_2.setitem(dw_2.rowcount( ),"as_id",ll_id)
dw_2.setitem(dw_2.rowcount( ),"as_content",ls_content)
dw_2.setitem(dw_2.rowcount( ),"as_key",'DAY')
LOOP
CLOSE cur_day;
uj5u.com熱心網友回復:
是在FETCH cur_day 這個后sqldbcode=3了,sqlerrtext=‘’uj5u.com熱心網友回復:
我在pb里面可以查詢到資料,到這就查不到了,回傳100啊uj5u.com熱心網友回復:
sqldbcode代表dbms的值,你為什么要判斷它呢,游標有無資料判斷sqlcode就可以了,關于dbcode為3的具體你去查access的幫助就可以了,一般來講不需要關注它的~~uj5u.com熱心網友回復:
我是根據sqlcode判斷的呀,關鍵現在我為什么查不到資料,sqlcode=100,而我把查詢陳述句直接拷貝到pb資料庫那地方執行,是可以查到資料的啊uj5u.com熱心網友回復:
先不用游標試試單獨的SQLint li_count
as_text="'%"+as_text+"%'"
select COUNT(*) into :li_count from everydaywork
where truework like :as_text
order by startdate desc;
判斷一下li_count的值再看~~
uj5u.com熱心網友回復:
select truework into :ls_content from everydayworkwhere
truework like ‘%工%’;
就可以查到資料
as_text="'%"+as_text+"%'"
select truework into :li_content from everydaywork
where truework like :as_text ;
這樣就查不到了
uj5u.com熱心網友回復:
as_text="'%"+as_text+"%'"改成 as_text="~~'%"+as_text+"%~~'" 試試
uj5u.com熱心網友回復:
兩個~號加一個'號uj5u.com熱心網友回復:
要用轉義符來說明'符號的,否則就被系統自動處理了uj5u.com熱心網友回復:
還是不行,查不到資料uj5u.com熱心網友回復:
用三個~試試,轉義符很是麻煩uj5u.com熱心網友回復:
一個兩個三個都不行uj5u.com熱心網友回復:
實在不行就做個datastore取出來,比用游標快uj5u.com熱心網友回復:
也是個方法,這個地方我就是想搞懂uj5u.com熱心網友回復:
機器上沒有access,不然偶就自己測測了,應該是可以的uj5u.com熱心網友回復:
IE 有問題, 點不起"參考"看了一下 #10樓, 其中:
as_text="'%"+as_text+"%'"
select truework into :li_content from everydaywork
where truework like :as_text ;
這樣就查不到了
這樣改了試一下:
as_text="%"+as_text+"%"
select truework into :li_content from everydaywork where truework like :as_text ;
uj5u.com熱心網友回復:
like '%aa%'不支持你這個通配符吧,
試試:
like '*aa*'
uj5u.com熱心網友回復:
//Not all DBMSs support CURSOR scrolling and locking options.//So I add the following dbParm string 2007.1.5
SQLCA.dbParm = "CursorScroll= 'Dynamic ',CursorLock= 'OptVal ' "
// 用于設定游標屬性的引數:CursorUpdate CursorScroll CursorLib CursorLock
uj5u.com熱心網友回復:
最好用pb9及以上版本uj5u.com熱心網友回復:
這個差不多。
uj5u.com熱心網友回復:
as_text='%'+as_text+'%'select * from table where column1 like :as_text using sqlca;
應該是這樣吧
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/82574.html
標籤:數據庫相關
上一篇:access 匯入 sqlserver,無法重復匯入,請大家幫忙,謝謝!
下一篇:pb10升級資料視窗保存變慢
