ASP编程:Oracle常}集(四)
在实现ERP等高端的ASP应用时,用户需要提供核心的经营资料,需要ASP商有很高的信用度。楼上说交互性不好,太牵强了吧。在微软提供的一套框架中,利用asp做网站,开发效率高,使用人数少,减少不必要的开销。交互性是互动方式,是有开发人员决定的。oracle21.用EXISTS替QDISTINCT提交一包括一Χ啾碣Y(好比部T表和雇T表)的查r,制止在SELECT子句中利用DISTINCT.
一样平常能够考]用EXIST替Q
比方:
低效:
SELECTDISTINCTDEPT_NO,DEPT_NAME
FROMDEPTD,EMPE
WHERED.DEPT_NO=E.DEPT_NO
高效:
SELECTDEPT_NO,DEPT_NAME
FROMDEPTD
WHEREEXISTS(SELECT‘X’
FROMEMPE
WHEREE.DEPT_NO=D.DEPT_NO);
EXISTS使查更敏捷,因RDBMS中心模M⒃谧硬樵的l件一旦M足後,立即前往Y果.
22.Re’低效绦小SQLZ句
用以下SQL工具找出低效SQL:
SELECTEXECUTIONS,DISK_READS,BUFFER_GETS,
ROUND((BUFFER_GETS-DISK_READS)/BUFFER_GETS,2)Hit_radio,
ROUND(DISK_READS/EXECUTIONS,2)Reads_per_run,
SQL_TEXT
FROMV$SQLAREA
WHEREEXECUTIONS>0
ANDBUFFER_GETS>0
AND(BUFFER_GETS-DISK_READS)/BUFFER_GETS<0.8
ORDERBY4DESC;
(g者按:m然今朝各NP於SQL化的D形化工具映霾桓F,可是出本人的SQL工具斫Q}始K是一最好的办法)
23.利用TKPROF工具聿樵SQL功能B
SQLtrace工具搜集正在绦械SQL的功能BY料K到一跟文件中.
@跟文件供应了S多有效的Y,比方剖析次.绦写,CPU利用rg等.@些Y料⒖梢杂化你的系y.
O置SQLTRACE在e:无效
ALTERSESSIONSETSQL_TRACETRUE
O置SQLTRACE在整Y料无效仿,你必SQL_TRACE翟init.ora中OTRUE,
USER_DUMP_DEST明日f了然天生跟文件的目
(g者按:@一中,作者K]有提到TKPROF的用法,SQLTRACE的用法也不蚀_,O置SQL
TRACE起首要在init.ora中O定TIMED_STATISTICS,@硬拍艿玫侥切┲匾rgB.
天生的trace文件是不成x的,以是要用TKPROF工具ζ溥M行DQ,TKPROF有S多绦.
人人能够⒖ORACLE手聿t解具w的设置.)
24.用EXPLAINPLAN剖析SQLZ句
EXPLAINPLAN是一很好的剖析SQLZ句的工具,它乃至能够在不绦SQL的情r下剖析Z句.
通^剖析,我就能够晓得ORACLE是怎麽舆B接表,利用什麽体例呙璞(索引呙杌蛉呙)和利用到的索引名Q.
你必要依照Y到外,上到下的序次解x剖析的Y果.EXPLAINPLAN剖析的Y果是用sM的格局分列的,
最炔康牟僮⒈蛔钕冉庾x,假如操纵锻又,有最小操纵的⒈皇紫绦.
NESTEDLOOP是少挡话凑丈鲜鲆t淼牟僮,正_的绦新是z查NESTED
LOOP供应Y料的操纵,个中操纵最小的⒈蛔钕忍.
g者按:
通^`,感应是用SQLPLUS中的SETTRACE功效比^便利.
e例:
SQL>list
1SELECT*
2FROMdept,emp
3*WHEREemp.deptno=dept.deptno
SQL>setautotracetraceonly/*traceonly能够不@示绦薪Y果*/
SQL>/
14rowsselected.
ExecutionPlan
----------------------------------------------------------
0SELECTSTATEMENTOptimizer=CHOOSE
10NESTEDLOOPS
21TABLEACCESS(FULL)OFEMP
31TABLEACCESS(BYINDEXROWID)OFDEPT
43INDEX(UNIQUESCAN)OFPK_DEPT(UNIQUE)
Statistics
----------------------------------------------------------
0recursivecalls
2dbblockgets
30consistentgets
0physicalreads
0redosize
2598bytessentviaSQL*Nettoclient
503bytesreceivedviaSQL*Netfromclient
2SQL*Netroundtripsto/fromclient
0sorts(memory)
0sorts(disk)
14rowsprocessed
通^以上剖析,能够得出H的绦胁襟E是:
1.TABLEACCESS(FULL)OFEMP
2.INDEX(UNIQUESCAN)OFPK_DEPT(UNIQUE)
3.TABLEACCESS(BYINDEXROWID)OFDEPT
4.NESTEDLOOPS(JOINING1AND3)
注:今朝S多第三方的工具如TOAD和ORACLE自己供应的工具如OMS的SQLAnalyze都供应了O其便利的EXPLAIN
PLAN工具.也S喜gD形化介面的伴侣能够x用它.
25.用索引进步效力
索引是表的一观点部分,用硖岣z索Y料的效力.H上,ORACLE利用了一}s的自均衡B-treeY.
一般,通^索引查Y料比全表呙枰.ORACLE找出绦胁樵和UpdateZ句的最好路r,ORACLE化器⑹褂盟饕.
同釉诼Y多表r利用索引也能够进步效力.另外一利用索引的好,它供应了主I(primarykey)的独一性C.
除那些LONG或LONGRAWY料型,你能够索引乎一切的列.一般,在年夜型表中利用索引特e无效.然,你也lF,
在呙栊”r,利用索引同幽芴岣咝.
m然利用索引能失掉查效力的进步,可是我也必注重到它的代r.索引必要空g
存,也必要按期So,每有在表中增p或索引列被修正r,索引自己也恍薷.@意味著每l的INSERT,
DELETE,UPDATE此多支付4,5次的磁片I/O.
因索引必要~外的存臻g和,那些不用要的索引反而共樵反rg慢.
g者按:
按期的重索引是有需要的.
ALTERINDEXREBUILD
26.索引的操纵
ORACLEλ饕煞NL形式.
索引独一呙(INDEXUNIQUESCAN)
年夜多登r下,化器通^WHERE子句LINDEX.
ASP最大的缺点在于网络的安全性和可靠性,企业将经营数据放在开放的平台上,最大的担忧就是如何保证这些数据不被其他人破坏。 封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。 如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助: 没有坚实的理论做基础,那么我们连踏入社会第一步的资本都没有,特别对于计算机专业的学生学好专业知识是置关重要的。在这里我侧重讲一下如何学习ASP,从平时的学习过程中。 掌握asp的特性而且一定要知道为什么。 交流是必要的,不管是生活还是学习我们都要试着去交流,通过交流我们可以学到很多我们自己本身所没有的知识,可以分享别人的经验甚至经历。 完全不知道到底自己学的是什么。最后,除了教程里面说的几个例子,还是什么都不会。 我们必须明确一个大方向,不要只是停留在因为学而去学,我们应有方向应有目标. Request:从字面上讲就是“请求”,因此这个是处理客户端提交的东东的,例如Resuest.Form,Request.QueryString,或者干脆Request("变量名")
页:
[1]