MYSQL教程之猎取MS SQL库数据字典的典范SQL语句
这些过程被存储和运行在数据库服务器上,以减少在客户端的处理过程,从而最大限度地提高了处理能力,因为通常情况下数据库服务器会运行地更快。存储过程并不是MySQL独有的功能,但是这个最近新增加的功能使得这个数据库比以前更具吸引力了。数据|语句SELECTsysobjects.nameAS,sysproperties.AS表申明,syscolumns.nameASfield,properties.AS字段申明,systypes.nameAStype,
syscolumns.length,ISNULL(COLUMNPROPERTY(syscolumns.id,syscolumns.name,
Scale),0)AS小数位数,syscolumns.isnullableASisnull,
CASEWHENsyscomments.textISNULL
THENELSEsyscomments.textENDAS,
CASEWHENCOLUMNPROPERTY(syscolumns.id,syscolumns.name,IsIdentity)
=1THEN√ELSEENDAS标识,CASEWHENEXISTS
(SELECT1
FROMsysobjects
WHERExtype=PKANDnameIN
(SELECTname
FROMsysindexes
WHEREindidIN
(SELECTindid
FROMsysindexkeys
WHEREid=syscolumns.idANDcolid=syscolumns.colid)))
THEN√ELSEENDAS主键
FROMsyscolumnsINNERJOIN
sysobjectsONsysobjects.id=syscolumns.idINNERJOIN
systypesONsyscolumns.xtype=systypes.xtypeLEFTOUTERJOIN
syspropertiespropertiesONsyscolumns.id=properties.idAND
syscolumns.colid=properties.smallidLEFTOUTERJOIN
syspropertiesONsysobjects.id=sysproperties.idAND
sysproperties.smallid=0LEFTOUTERJOIN
syscommentsONsyscolumns.cdefault=syscomments.id
WHERE(sysobjects.xtype=U)
这种服务也提供了足够的监控功能来跟踪性能和使用情况,在问题发生时将发出通知并生成一定深度的分析报告。 大侠们有推荐的书籍和学习方法写下吧。 是要和操作系统进行Socket通讯的场景。否则建议慎重! 无法深入到数据库系统层面去了解和探究 另一个是把SQL语句写到服务器端,就是所谓的SP(存储过程); 对递归类的树遍历很有帮助。个人感觉这个真是太棒了!阅读清晰,非常有时代感。 一直以来个人感觉SQLServer的优化器要比Oracle的聪明。SQL2005的更是比2k聪明了不少。(有次作试验发现有的语句在200万级时还比50万级的相同语句要快show_text的一些提示没有找到解释。一直在奇怪。) 无法深入到数据库系统层面去了解和探究 可能有的朋友会抱怨集成的orderby,其实如果使用ranking函数,Orderby是少不了的。如果担心Orderby会影响效率,可以为orderby的字段建立聚集索引,查询计划会忽略orderby操作(因为本来就是排序的嘛)。
页:
[1]