ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:26.94KB ,
资源ID:4737098      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4737098.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Access 命名规则.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Access 命名规则.docx

1、Access 命名规则Access 命名规则:网址:www.office- 好的命名规则让你受益终生 为什么在程序编写中需要遵循一个好的命名规则呢。首先,统一的命名标准能够让你的代码始终保持一致的风格,便于你自己看懂,也便于与别的开发人员交流和沟通,实际上,这些标准也是一种语言,这是你们沟通最好的媒介,有了它,你甚至不需更多的解释,对方就能看懂你的程序。1.编程老手可能会长期用隐含错误的方式编程(习惯成自然),发现毛病后都不愿相信那是真的!2.编程高手可以在某一领域写出极有水平的代码,但未必能从全局把握软件质量的方方面面。3.在团体开发中, 一个好的命名规则能够最大限度的实现程序共享, 加快开

2、发进度。让协作者、后继者和自己在现在或将来很久以后,在最短的时间内看清你的程序结构,理解你的设计思路。从而大大提高代码的可读性、可重用性、可移植性。4.通过命名注入更多的信息在源代码中,可以使你的程序易读和易于维护,减少一些隐性错误,同时大大缩短你写程序注释和程序文档的时间,因为你的命名实际上已经是一种程序注释。5.提高与ACCESS对象协作的能力, 包括对象的排序, 自已函数库的编写, 以及查找与替换的能力,例如你更容易把报表和窗体对象、表和查询对象分开并按照一定的规则排序。6.有利于程序编写工具的开发, 可以编写自己的加载项并遵守好的命名规则来加快程序代码的编写、排版以及自动纠错。如全局查

3、找与替换工具、代码分析与优化工具、报表自动生成工具等等。7.更易于发现代码的错误并更易于修正错误,当系统的要求实现的功越来越复杂或当代码量到达一定的规模, 不管程序员是否愿意, 出现错误几乎都是不可避免的,但如果大家都遵循一定的编程标准,则可以最大限度地降低错误出现的机率, 而且在出现错误的情况下也能迅速地发现和排除。8.长期遵循一个好的命名规则能让你长期稳定地编写高质量、高效率和更大型的程序。LNC for Microsoft Access 命名规则简介: LNC即Leszynski Naming Convention, 原来在The Leszinski/Reddick Guidelines

4、 for Access 1.x, 2.x这本白皮书中由Stan Leszynski 和 Greg Reddick 推荐使用的命名规则, LNC 开始于 Access 1.0这个版本, 后来随着ACCESS版本的升级,这个命名规则就被迅速传播开来, 在当今ACCESS和VB开发者和开发团体中, 它已经成为事实中的命名标准, 在国外已经广泛被使用,并被微软推荐使用, 它规范了从ACCESS数据库设计、窗体与报表的设计以及程序的编写一整套完整且易用的命名标准, 我看过国内许多VB和ACCESS源程序, 但很少人, 特别在ACCESS程序员中, 注意到命名规则并遵循某种命名约定, 这给程序交流造成了很

5、大的困难, 同时, 由于程序员自己没有一套标准的命名规则, 在编写过程中随意命名, 随着时间的推移, 自已都难以阅读和修改以前的程序源码。 LNC for Microsoft Access 详解: LNC命名规则分为两个级别,级别1是比较容易理解的,但级别2对对象进行了更严格的划分,级别1更多地适合初级程序员,而级别2则更适合于一些有经验的开发者,或在一些非常复杂或多层结构的系统开发中使用,你应该根据你自己的经验和习惯来选择更适合你的命名规则级别。请注意,不是命名规则的所有部分都分为两个级别,而只是在某些部分有所不同LNC命名规则是基于匈牙利命名法,为什么叫匈牙利命名法呢,主要是取自于作者的国

6、籍,它的作者 Charles Simonyi ,也曾经使用过ACCESS的早期版本。匈牙利命名法是在他的博士论文中提到的。匈牙利命名法的一些基本原理在Visual Basic的说明手册和一些开发文档中都会被提及到,微软内部也是使用匈牙利命名法,在世界上,已经有非常多的程序员在使用这个命名法,LNC命名规则实际上是将匈牙利命名法应用到ACCESS上, 并特别针对ACCESS一些特征进行了一些完善。LNC命名规则提倡所有的对象的名称均由下面四个部分组成:一个或多个前缀、一个标记符、基本名字、限定词prefixestagBasenameQualifier 注:里的内容表示为可选内容。标记符是必须的内

7、容,但一般情况下,你都需要一个基本名字来准确描述你的变量的实际功能,以用来区分同类型的不同意义的变量。如果你仅仅使用一个标记符来标记一个变量,那么就比较难以分辨不同的变量,但有一种情况除外,那就是你传一个对象参数给另一个函数时,可以不需要指定基本名字,例如你需要传递一个窗体对象给一个初始化窗体颜色的函数,那么这个作为参数传递的窗体对象实际上是作为一种通用的窗体对象,所以你不必为它指定一个具体的名字,而直接使用标记符即可。下面举出几个简单的例子:名称前缀标记符基本名字限定符备注tblCustomertblCustomer客户表aintPartNumaintPartNum零件号数组strCustN

8、amePrevstrCustNamePrev原来的客户名前缀和标记符总是小写的,这样当我们的眼光扫过对象名称时,目光就会停留在以大写字母开头的基本名字上面,这样提高了名称的可读性,基本名字和限定符都是以大写字母开头的。基本名字简洁地描述了这个对象的意义,而非描述它的类别,例如在查询qryPartNum这个名称中,PartNum就是基本名字,它是 “Part Number”的缩写,对象的标记符应该是简单且易记忆的,而前缀是放在对象名和标记符之前,用来提供更多或额外的信息,例如数字对象intPartNum前加个a, 代表这个零件号数组,即aintPartNum,更进一步,如果我们需要一个变量来指定

9、aintPartNum这个数组的索引,那需要在这个数组的前面再加一个前缀I,那这个变量的名称应该是iaintPartNum。当然,你会发现,如果严格按照上述的规范来命名你所有的对象,需要你付出更多的努力并增加你现有的工作量,但如果一年后让你重新来修改下面这两种风格的代码,你会觉得哪种更易于修改和更易于重用呢。第一种风格:Z = Y(X)第二种风格:intPart = aintPartNum(iaintPartNum)对象限定符是在基本名字后面再加一个符号以更具体阐明这个对象,我们还是以前面的iaintPartNum为例,如果你想为这个数组保存两个索引号,一个是第一个索引号,一个是最后一个索引号

10、,在iaintPartNum加上限定符就变成了iaintPartNumFirst和iaintPartNumLast命名数据库对象:数据库对象(表、查询、窗体、报表、宏、模块)是在ACCESS应用程序中经常被引用的对象,它们会出现在宏、VBA代码和属性中,所以如何对它们正确命名是非常重要的。微软所带的Northwind数据库例程以及微ACCESS手册中允许对象名中存在空格,但我们不建议这种命名风格,在许多数据库引擎和编程语言中,包括ACCESS BASIC,空格是一种分隔符,它不是对象名称的一个逻辑部分,而且,在许多数据库平台中包括微软的SQL SERVER数据库和WORD文字处理程序,带有空格

11、的名称是不能工作的。相反,使用一种大小写混合的方式来指定名称,例如:tblAccountsPayable,如果一定要使用空格,那就用下划线“_”来取代它。对LNC命名规则中,所有数据容器对象都有一个标记符,在对象名称前面加上标记符对非编程人员来说可以不会增加太多可读性,但对于编程新手来说,当他们需要在报表精灵的数据源列表框或一个窗体的控件源选择一个表或查询时,添加标记符会带来很大帮助,因为ACCESS会把表和查询不加分别地放在一个长列表里。下面是级别1的数据库容器对象的标记符:对象标记符例子TabletblTblCustomerQueryqryqryOverAchieverFormfrmFrm

12、CustomerReportrptrptInsuranceValueMacromcrmcrUpdateInventoryModulebasBasBilling在级别1, 数据库容器对象唯一需要的一个限定符就是 Sub, 它是放在那些子窗体或子报表的窗体名的后面. 例如窗体 frmProductSupplier 拥有一个相关的子窗体frmProductSupplierSub. 这样,一旦排序时,对象和它的子对象就会顺序排在一起。下面是级别2的数据库容器对象的标记符:对象标记符例子TabletbltblCustomerTable (lookup)tlkptlkpShipperQuery (sele

13、ct)qry (or qsel)qryOverAchieverQuery (append)qappqappNewProductQuery (crosstab)qxtbqxtbRegionSalesQuery (data definition)qddlqddlAddWorkColumnQuery (delete)qdelqdelOldAccountQuery (form filter)qfltqfltSalesTodayQuery (lookup)qlkpqlkpStatusQuery (make table)qmakqmakShipToQuery (pass-through)qsptqsptA

14、rchiveQuantityQuery (union)quniquniOrderDetailQuery (update)qupdqupdDiscountFormfrmfrmCustomerForm (dialog)fdlgfdlgLoginForm (menu)fmnufmnuUtilityForm (message)fmsgfmsgWaitForm (subform)fsubfsubOrderReportrptrptInsuranceValueReport (subreport)rsubrsubOrderMacromcrmcrUpdateInventoryMacro (for form)mf

15、ormnamemfrmCustomerMacro (menu)mmnummnuEntryFormFileMacro (for report)mrptnamemrptInsuranceValueModulebasbasBilling如果使用级别2 的命名规则,则在数据库容器里排序时,有着类似功能的对象会排在一起,当你的应用越来越大时,在你的数据库系统中可能会包含100个窗体或者更多,而其中30个窗体是用来显示消息用的,如果有一天,你需要将这个消息窗体里面的文本框的文字由黑色全部改成红色,你必须逐一打开每个窗体确定它是否消息窗体然后再修改文本框的颜色,但如果你把它们的名称设为包含同样的标记符fms

16、g, 那么排序时它们会排在一起,那你修改的时候就不必一个一个去筛选了,大大节约了你修改时间。请小心仔细地选择表的名称,因为改变ACCESS对象的名称并不会自动应用到整个数据库,所以当在ACCESS对象创建时给它正确命名是非常重要的。例如,在以后的开发过程中如果需要改变表的名称,你可需要改变所有引用到到这个表名的表、查询、窗体、报表、宏和模块中引用到到这个表名,虽然,有一些辅助工具可以帮你减轻一些工作量,但最好还是在一开始就给它正确地命名。你可能希望引用了一个表的每个数据对象都有一个与表名一样的基本名字,而使用相应的标记符来区分它们,例如,你的表名是tblCustomer,它的主窗体名应该是fr

17、mCustomer,它的主报表名应该是rptCustomer,而引发相关这些事件的宏名应该是mfrmCustomer和mrptCustomer,我们也建议表的名称不宜用复数形式,例如使用tblCustomers,因为一个表通常都是包含多条记录的,这暗示它本身就是复数的。数据库对象前缀?我们使用四种数据库对象前缀: ?zz表示那些你已经废弃的但是可能想要在数据库中将来作为参考或保存使用的对象 (举例来说,zzfrmPhoneList). zz将导致对象名称排在数据库容器的底部,这样,它就会放在一个不显眼的地方,但它仍然是有效的。?zt表示一些临时的对象 (举例来说,ztqryTest). .1z

18、s表示系统对象 (举例来说,zstblObjects). 系统对象是那些不被最终用户使用的那些有关系统开发和维护方面的对象,例如错误日志,开发注解,文档,关联信息等等. (注意 zs 是前缀.这样系统对象就会尽量排在数据库容器的底部). _ 来表示那些正在开发中的对象 (举例来说,_mcrNewEmployee). 一个对象名字前面加上下划线可使它排在数据库容器的顶端,提醒你它需要注意. 当这个对象已经全部完成后 ,除去下划线,它将会正常地排序. 字段标志符在字段上使用标志符一直是一个争议的话题,甚至在这个文章的作家之间也存在不同的见解. Greg主张字段标志符也应该统一使用与其它ACCESS

19、数据对象及VBA中使用的一样的命名规则 ,而Stan则更喜欢使用一种与平台和数据类型无关的命名方式,即字段名称不需要加字与字段类型相关的标志符,这样有助于数据库移植和相互连通。考虑到两者的立场,连同你自己的需求,你们可以选择在命名时是否加入下表这些标志符:数据类型标志符例子BinaryBinbinInternalByteBytbytFloorNumCounterLnglngPKCntCurrencyCurcurSalaryDate/TimeDtmdtmHireDateDoubledbldblMassIntegerint (C programmers may prefer w)intUnitLo

20、nglng (C programmers may prefer dw)lngPopulationMemomemmemCommentsOleoleoleEmpPhotoSinglesng (Some users find sgl more mnemonic )sngScoreTextstr (Used as opposed to txt because a textbox control uses txt. C programmers may prefer sz)strFirstNameYes/Noysn (C programmers may prefer f)ysnDiscounted?注意:

21、 .2ACCESS引擎 (jet) 支持二进制的数据类型,但它并没有对用户开放这种功能,但是你可以通过汇入或链接到外部表来实现这种数据类型,而且,一些系统表也使用这种数据类型命名。.3在ACCESS内部,自动编号数据类型是当作是一种长整型来对待,只是增加了一个auto-increment的特殊属性,而自动编号字段经常会作为外键被其它表引用,所以Greg使用了与长整型同样的标记符,但如果你想区分长整型与自动编号类型,则可以在对象名称最后加上Cnt限定符.4标签控件对象当你创建一个新的绑定控件时,窗体或报表会自动分配字段的名称给这个控件名称,控件与字段使用相同的名称会导致命名的混乱,特别你在VBA

22、代码中同时引用到字段和控件,有时会导致一些错误,为避免这种情况,需要在控件名称前面加上标记符,例如一个文本框控件,它的控件来源是Customer,那么我们给它取的名称就是txtCustomer.在级别1 中,使用者只是想区分活动控件和标签,对不太关心控件的类型,这样,控件的标记符就如下所示:ObjectTagExampleLabellbllblLastNameOther typesctlctlLastName级别1描述了了控件之间一个很小的差异性的,不过,它在函数、宏或程序文档还是非常有用的,例如,通过它可以区别哪些控件是属于标签,那些是其它控件,其中前者是不可修改的,而后者则可从用户输入或代

23、码中接受值级别2指明了窗体或报表中控件的类型,这样VBA代码或宏更容易区分这些控件的属性和事件对象标记符例子Chart (graph)chtchtSalesCheck boxchkchkReadOnlyCombo boxcbocboIndustryCommand buttoncmdcmdCancelFrame (object)frafraPhotoLabellbllblHelpMessageLinelinlinVerticalList boxlstlstPolicyCodeOption buttonoptoptFrenchOption groupgrpgrpLanguagePage break

24、brkbrkPage1Rectangle (Visual Basic uses the term shape)shpshpNamePanelSubform/reportsubsubContactText boxtxttxtLoginNameToggle buttontgltglForm 对控件来说,唯五的前缀就是 “zs”,它只出现在级别2中,它表明这是一个系统控件,只被窗体或代码使用,而不对用户开放,例如有些控件在运行时是不可见的,但它可能用来存储一些临时值或传递参数给窗体唯一的前缀为控制, zs,出现在水平 2. 它指示系统- 水平被形式用或编码的控制但是不对使用者显示. 如此的控制通常不

25、对感到看得见的跑计时但是他们可能储存暂时的价值,否则叁数传给形式.命名代码或宏中的对象: 使用标准的描述性强的变量、常量、和函数名可大大增强代码的共享、维护、和联接的能力1.变量的标记符每个变量都应有一个如下表所示的标记符变量类型标记符例子ContainerconDim conTables as ContainerControlctlDim ctlVapor As ControlCurrencycurDim curSalary As CurrencyDatabasedbDim dbCurrent As DatabaseDocumentdocDim docRelationships as Doc

26、umentDoubledblDim dblPi As DoubleDynasetdynDim dynTransact As DynasetFlag (Y/N, T/F)fDim fAbort As IntegerFieldfldDim fldLastName as FieldFormfrmDim frmGetUser As FormGroupgruDim gruManagers as GroupIndexidxDim idxOrderId as IndexIntegerintDim intRetValue As IntegerLonglngDim lngParam As LongObjecto

27、bjDim objGraph As ObjectParameterprmDim prmBeginDate as ParameterPropertyprpDim prpUserDefined as PropertyQueryDefqdf (or qrd)Dim qdfPrice As QueryDefRecordsetrec (or rst)Dim recPeople as RecordsetRelationrelDim relOrderItems as RelationReportrptDim rptYTDSales As ReportSinglesngDim sngLoadFactor As

28、 SingleSnapshotsnpDim snpParts As SnapshotStringstrDim strUserName As StringTabletblDim tblVendor As TableTableDeftdf (or tbd)Dim tdfBooking as TableDefType (user-defined)typDim typPartRecord As mtPART_RECORDUserusrDim usrJoe as UserVariantvarDim varInput As VariantWorkspacewrk (or wsp)Dim wrkPrimar

29、y as WorkspaceYes/No18ysnDim ysnPaid As Integer在我们的命名方式中,不使用$ 和 %这些数据类型前缀,因为在ACCESS和Visual basic的文档中是不推荐使用这些前缀的象窗体和报表这样的数据库对象变量的标记符是与数据库对象的标记符是一样的,这样命名有助于编程,因为通常你分配给一个变量的名称(如tblVendor)与它所引用的对象(tblVendor)有同样的名称,这样就会在编程中提供统一的对象2.常量和自定义数据类型使用大写名字作为常量,这是WINDOWS编程的一种习惯,3.范围前缀命名级别2中引入了变量和常量的范围前缀的概念,范围放在其它所有前缀的前面 局部定义的变量没有前缀 局部定义的静态变量前缀为 s, 例如 sintAc

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1