亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

Chinaunix

標題: occi,sql查詢第一次時間很長,第二次卻很短 [打印本頁]

作者: rain_fish    時間: 2012-06-11 10:48
標題: occi,sql查詢第一次時間很長,第二次卻很短
同樣的sql,只是查詢條件的字段內容變化了,實在不知道解決辦法,還請高人指點
具體描述:
http://72891.cn/thread-3752034-1-1.html

作者: yulihua49    時間: 2012-06-11 12:26
本帖最后由 yulihua49 于 2012-06-11 12:44 編輯
rain_fish 發(fā)表于 2012-06-11 10:48
同樣的sql,只是查詢條件的字段內容變化了,實在不知道解決辦法,還請高人指點
具體描述:
http://bbs.ch ...

就是要求你在語句中使用綁定變量,而不是使用值。
在OCI或OCCI中,使用綁定變量是一件相當麻煩的事。使用PRO*C就能夠自動綁定。
我們?yōu)榱四軌蛟贠CI中簡化綁定變量的操作,建立了DAU(Data Access Unit)包裝器框架,類似JAVA的Hibernate,
簡化了OCI的使用,有興趣到SDBC QQ群索取源碼和說明書。
給你一個例子的結果日志:
OAD_mk_ins sth=0,INSERT INTO CMS_ACC.CM_DIAGRAM (sch_date,line_no,trip_code,trn_ph
y_id,dest_id,tab_no,direction,file_name,count,stations) VALUES (TO_DATE(:1,'YYYYMMDD'), :2, :3, :4, :5, :6, :7,
:8, :9, :10)
2 t_OAD:27814 06/06 15:14'23 loadfile:rows=4631,upd=0,TIMEVAL=269361(微秒)

就是存了4631個記錄只消耗了0.269秒。
你可以看看那個語句,它的值,每行都是不同的,但是每個語句都是相同的,因此只解析一次,使得插入這批數據的時間很短。

查詢語句也同樣:
bind_select:cursor=0,sqlo_prepare=SELECT TO_CHAR(sch_date,'YYYYMMDD') sch_date,line
_no,trip_code,trn_phy_id,dest_id,tab_no,direction,file_name,count,stations FROM CMS_ACC.CM_DIAGRAM WHERE sch_da
te=TO_DATE(:1,'YYYYMMDD')
5 demo:29843 06/11 11:59'48 release_DB_connect tid=1,pool[0].0,USEC=3548462388563805
5 demo:29843 06/11 11:59'48 DiagTrip:read 4631,77261 Rec's TIMEVAL=430709


作者: to407    時間: 2012-06-11 13:18
回復 1# rain_fish


    看不懂你的需求。。。難道你是要多次查詢還像第一次那么慢么?非得那樣的話。。你就每次用不同的SQL。。。換換大小寫也行。。。。
作者: rain_fish    時間: 2012-06-11 15:55
to407 發(fā)表于 2012-06-11 13:18
回復 1# rain_fish


呵呵,我的問題是:為什么第一次時間那么長,是什么原因造成的,不好意思,寫的有歧義。
作者: rain_fish    時間: 2012-06-11 15:56
yulihua49 發(fā)表于 2012-06-11 12:26
就是要求你在語句中使用綁定變量,而不是使用值。
在OCI或OCCI中,使用綁定變量是一件相當麻煩的事。使用 ...


非常感謝您的回復,在使用occi時已經使用了它的綁定變量功能。
例如:
ap_stmtQueryDomain->registerOutParam(3, OCCINUMBER);


作者: to407    時間: 2012-06-11 16:26
回復 4# rain_fish


    看explain plan。。。這個都得實際情況慢慢分析
作者: rain_fish    時間: 2012-06-12 11:12
回復 6# to407


    只能這樣了,謝謝!




歡迎光臨 Chinaunix (http://72891.cn/) Powered by Discuz! X3.2