演示文稿二次开发基础篇_第1页
演示文稿二次开发基础篇_第2页
演示文稿二次开发基础篇_第3页
演示文稿二次开发基础篇_第4页
演示文稿二次开发基础篇_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

演示文稿二次开发基础篇现在是1页\一共有24页\编辑于星期三(优选)二次开发基础篇现在是2页\一共有24页\编辑于星期三讲演主题VB应用讲解XML应用讲解SQLSever应用讲解现在是3页\一共有24页\编辑于星期三VB应用讲解VB文件介绍窗体文件

(*.Frm)类文件

(*.Cls)模块文件

(*.Bas)自定义控件

(*.Ctl)属性页文件

(*.Pag)窗体资源文件

(*.Frx)资源文件

(*.Res)工程文件

(*.Vbp)工程组文件

(*.Vbg)工程配置文件

(*.Vbw)代码管理文件

(*.Scc)日志文件

(*.Log)现在是4页\一共有24页\编辑于星期三VB应用讲解(Frm)VERSION5.00BeginVB.FormForm1Caption="Form1"ClientHeight=3195ClientLeft=60ClientTop=345ClientWidth=4680LinkTopic="Form1"ScaleHeight=3195ScaleWidth=4680StartUpPosition=3'窗口缺省

BeginVB.CommandButtoncmdCreateXMLCaption="CreateXml"Height=495Left=1680TabIndex=1Top=1920Width=1455EndEndAttributeVB_Name="Form1"AttributeVB_GlobalNameSpace=FalseAttributeVB_Creatable=FalseAttributeVB_PredeclaredId=TrueAttributeVB_Exposed=False现在是5页\一共有24页\编辑于星期三VB应用讲解(规范)强制显式声明模块中的所有变量OptionExplicit变量一定要在前面声明PrivateSubcmdCreateXML_Click()DimoEleAsIXMLDOMElementDimoRootAsIXMLDOMElementDimoNodeAsIXMLDOMNode注意缩进‘Xml标准元素‘Xml根节点‘Xml标准节点IfA=BThenA=A+1EndIFWhileA<100A=A+1WendFori=1to100A=A+1NextPrivateSubTest()Msgbox“Thisisatestsub”NextSelectCaseVal(x)Case1Print“ValueIs1”EndSelect适当的换行PrivateSubcmdCreateXML_Click()DimoEleAsIXMLDOMElement

DoCodeEndSubPrivateSubAnotherSub现在是6页\一共有24页\编辑于星期三降低断行标示“_”的使用频度,脚本换行增加换行标示sSql=“Select*FromTable”&

_“WhereCode=‘1001’”sSql=“Select*FromTable”&VbCrlfsSql=sSql&“WhereCode=‘1001’”

VB应用讲解(规范)每个函数段最好不要超过30行PrivateSubcmdCreateXML_Click()DimoEleAsIXMLDOMElement

DoCodeEndSub30现在是7页\一共有24页\编辑于星期三VB应用讲解(规范)‘获取Xml节点属性值PrivateFunctionGetXmlAttr(ByrefeItemAsXmlElement,ByvalsNameasString)AsStringOnErrorGotoErrExistDimvValueAsVariant‘获取的Xml属性值

vValue=eItem.GetAttribute(sName)IfIsNull(vValue)Then‘判断该属性是否存在GetXmlAttr=“”‘不存在,返回空串ElseGetXmlAttr=vValueEndifErrExist:GetXmlAttr=“”

‘取数失败,返回空串EndFunction足够的注释信息最好有错误处理,最好不要用OnErrorResumNext业务场景考虑全面,避免实时错误声明参数是按地址传入还是数值功能单一,就干一件事情现在是8页\一共有24页\编辑于星期三讲演主题VB应用讲解XML应用讲解SQLSever应用讲解现在是9页\一共有24页\编辑于星期三Node 节点,类似于数组,有文本属性Element 元素,带属性的节点Attribute属性,类似于集合,不可重复Text 文本,不具备任何扩展属性备注 <!--备注-->DocumentElement根节点,Dom只可以有一个根节点,该节点为Element属性XML应用讲解XML介绍<?xmlversion='1.0'encoding='gb2312'?>现在是10页\一共有24页\编辑于星期三XML应用讲解XML介绍节点SelectSingleNodeselectNodesfirstChildlastChildnextSiblingappendChildremoveChildtext现在是11页\一共有24页\编辑于星期三XML应用讲解XML介绍属性attributesgetAttributeNodegetAttributesetAttributeremoveAttributetext现在是12页\一共有24页\编辑于星期三XML应用讲解字符转义“"‘'<<>>&&XML字符转义有些特殊字符无法在Xml中直接保存,会使用转义字符进行描述。该描述会影响XML的保存内容,但是显示仍然会按照原始内容显示,而非转义内容。VB中对属性等赋值取数直接使用特殊字符,只是影响Xml的保存文件。但是如果对Xml的Xml属性直接操作时就是转义字符了。现在是13页\一共有24页\编辑于星期三XML应用讲解XPath使用“/”进行路径操作,如:Nd/Itm/Name使用“[]”进行谓词判断,如:Nd[Itm/Name]使用“@”对属性进行判断,如:Item[@Name=‘a’]使用“//”获取dom全路径下的所有节点内容使用“*”进行模糊匹配XML严格区分大小写,书写时一定要注意现在是14页\一共有24页\编辑于星期三XML应用讲解Schema<xmlxmlns:s="uuid:XXX"xmlns:dt="uuid:XXX"xmlns:rs="urn:schemas-microsoft-com:rowset"xmlns:z="#RowsetSchema"><s:Schemaid="RowsetSchema"><s:ElementTypename="row"content="eltOnly"rs:updatable="true"><s:AttributeTypename="cCode"rs:number="1"rs:nullable="true"rs:writeunknown="true"rs:basecatalog="UFDATA"rs:baseschema="dbo"rs:basetable="PO"rs:basecolumn="cPOID"><s:datatypedt:type="string"dt:maxLength="30"/></s:AttributeType><s:extendstype="rs:rowbase"/></s:ElementType></s:Schema><rs:data><z:rowcCode="0000000241"beai="1"editprop="A"/></rs:data></xml>现在是15页\一共有24页\编辑于星期三讲演主题VB应用讲解XML应用讲解SQLSever应用讲解现在是16页\一共有24页\编辑于星期三SQL应用讲解系统数据库和系统表Master

master是数据库的最重要的数据库,联系着其他的数据库,并记录着用户数据!相当于超级管理员的账户Model 模版数据库Msdb Sql内部使用,一般用于计划作业和数据库邮件tempdb临时数据库pubs示范数据库Sysobjects数据库对象表Syscolumns数据库对象字段表sysProcesses(master)数据库系统进程现在是17页\一共有24页\编辑于星期三SQL应用讲解常用对象数据表

标准前缀:EF_项目_XXXX或EF_项目_T_XXXX字段

视图

标准前缀:EF_项目_V_XXXX存储过程

标准前缀:EF_项目_P_XXXX函数

标准前缀:EF_项目_F_XXXX触发器

标准前缀:EF_项目_Tri_XXXX自定义变量

索引

标准前缀:EF_项目_IX_XXXX约束

标准前缀:EF_项目_CK_XXXX现在是18页\一共有24页\编辑于星期三SQL应用讲解常用命令SP_Who检查进程SP_Lock检查锁KillSp_ID删除进程DBCCInputBuffer(SP_ID)检查进程内容DBCCSHRINKDATABASE收缩数据库DBCCSHRINKDB收缩数据库DBCCSHRINKFILE收缩数据和日志文件DBCCSHOWCONTIG扫描表密度DBCCREINDEX重建数据库索引DBCCINDEXDEFRAG重建数据库索引现在是19页\一共有24页\编辑于星期三SQL应用讲解常用命令SelectTop10*FromXXXWith(nolock)WhereXX=YYSumMaxMinAvgGroupByxx,yyHavingSum(xx)>10000Union(All)InsertIntoA(a,b,c)Values(‘a’,’b’,’c’)DeleteAWherea=‘a’SelectA.*Into#AWherea=‘a’LeftJoinRightJoinInnerJoinFullJoinCrossJoin

(Select*FromA,B)现在是20页\一共有24页\编辑于星期三SelectA.VouchCode,A.VouchName,B.Code,C.Name,B.Num,B.[Money]FromAWith(nolock)LeftJoinBWith(nolock)ONA.ID=B.IDINNERJoinCWith(nolock)ONA.ID=C.IDAndB.Code=C.CodeWhereA.VouDateBetween'2010-5-1'And'2010-5-31'Set@SQL='SelectA.VouchCode,A.VouchName,B.Code,C.Name'+'FromA'+'LeftJoinBONA.ID=B.ID'+'INNERJoinCONA.ID=C.IDAndB.Code=C.Code'+'WhereA.VouDateBetween''2010-5-1''And''2010-5-31'''SQL应用讲解编写规范尽量不要超过五层关键字前换行Set@SQL='SelectA.VouchCode,A.VouchName,B.Code,C.NameFromALeftJoinBONA.ID=B.IDINNERJoinCONA.ID=C.IDAndB.Code=C.CodeWhereA.VouDateBetween''2010-5-1''And''2010-5-31'''SQL变量赋值尽量不要拼很多的串使用脏读现在是21页\一共有24页\编辑于星期三减少前后台交互次数没有必要的数据不要取到前台避免客户端海量运算减少IN的使用避免使用Union脚本中尽量避免使用游标(尤其不能游标嵌套)存储过程功能清晰,减少业务分支查询,降低预编译时间关键业务字段使用索引处理多使用整形数据判断,避免布尔值判断整理数据表碎片,提升索引效率SQL应用讲解效率问题索引失效比较字段数据类型转换或运算比较字段内容少于组合索引内容对Null值进行比较比较字段表内内容比较一致,系统没有建立索引使用“<>”来进行索引字段比

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论