仓酷云 发表于 2015-1-16 23:38:21

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最大的缺点在于网络的安全性和可靠性,企业将经营数据放在开放的平台上,最大的担忧就是如何保证这些数据不被其他人破坏。

飘灵儿 发表于 2015-1-20 10:47:42

封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。

兰色精灵 发表于 2015-1-29 06:48:51

如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:

谁可相欹 发表于 2015-2-5 23:35:14

没有坚实的理论做基础,那么我们连踏入社会第一步的资本都没有,特别对于计算机专业的学生学好专业知识是置关重要的。在这里我侧重讲一下如何学习ASP,从平时的学习过程中。

再见西城 发表于 2015-2-14 05:26:29

掌握asp的特性而且一定要知道为什么。

透明 发表于 2015-3-4 04:53:25

交流是必要的,不管是生活还是学习我们都要试着去交流,通过交流我们可以学到很多我们自己本身所没有的知识,可以分享别人的经验甚至经历。

冷月葬花魂 发表于 2015-3-11 17:06:03

完全不知道到底自己学的是什么。最后,除了教程里面说的几个例子,还是什么都不会。

不帅 发表于 2015-3-19 02:31:00

我们必须明确一个大方向,不要只是停留在因为学而去学,我们应有方向应有目标.

蒙在股里 发表于 2015-3-27 05:15:38

Request:从字面上讲就是“请求”,因此这个是处理客户端提交的东东的,例如Resuest.Form,Request.QueryString,或者干脆Request("变量名")
页: [1]
查看完整版本: ASP编程:Oracle常}集(四)