来源:http://www.accessoft.com/rdp/tutorial/main.html
因此在使用《盟威软件快速开发平台》时,会有一些特别的讲究,如数据和程序分离(分为后台数据库和前台客户端)、默认采用非绑定式窗体、尽量避免使用“OLE对象”或“附件”等其它数据库不支持或对性能影响比较大的字段数据类型等等。
关于软件开发的要点
进行正式开发前,如果你想开发的软件相对较复杂,模块功能比较多,务必要尽量做好前期需求分析、系统整体规划设计等工作,不要急于一上来就进行编码开发。实际上在规范化的开发流程中,一般进行具体编码设计所用的时间,只占整个软件开发项目总时间的三分之一,最多不超过二分之一。
不要一开始把摊子铺得太大,什么东西都想搞,结果最后什么都没搞成,反而把自己搞死了-_-! 而应该先从简单的入手,循序渐进,逐步制订短期内可以完成的目标。随着学习的深入、技术水平的增长再逐步增加功能模块,进行完善。这样每当完成一部分时,都会让你有成就感,加强继续下去的信心和动力。
先基于 Access 数据库进行开发,开发完成后再升迁到其它数据库,不要一开始就用上 SQL Server等数据库。原因是基于 Access 后台数据库时,可以设置好字段的格式、输入掩码、标题、默认值等等属性,然后在使用 Access 的向导或者快速开发平台的自动生成器去创建窗体时,可以直接将这些属性继承过来,自动应用在控件属性中。而如果换成其它后台数据库,字段就没有了这些扩展属性,需要在窗体创建完成后,再去一个一个的修改控件属性,就会比较麻烦,多出不少工作量。
要善于利用 Access 自带的向导功能。Access 中无处不在的各种向导,是其最大特色,Access 的本身的方便易用性,很大程度就是因为有了这些向导。建议大家有空时多多了解向导的使用,掌握其使用技巧,这样不但能让你在不具备相应的技术能力时也能设计出实用的功能,还可以从中学习到很多有用的技术细节知识。记住,向导不是“菜鸟专用”品牌,真正的高手都是善于并且经常利用向导的!君子生非异,善假于物也!
关于表设计的要点
数据库的设计是一个管理信息系统软件成功的基石,而表的设计又是数据库设计的基础。只有优良合理的数据库设计,才能保证系统的长期稳健运行,同时详细的表设计还可以让后面的功能模块的开发更加方便快捷。在表设计时应当注意以下要点:
合理设置字段的数据类型,因为每种数据类型都有其特殊的计算方式,数据类型不合理,则这些都无法使用,例如将“数量”字段的数据类型设为“文本”,那么就无法对其进行汇总、平均等计算。
每个表都应该定义主键和外键(如果有外键),如果找不到适合的用于主键的字段,建议使用“自动编号”数据类型的字段作为主键。主键和外键不仅仅是关系数据库管理系统的要求,同时也是开发的要求,尤其是当使用 SQL Server等其它数据库作为后台数据库时,如果表中没有主键,链接至 Access 中的链接表数据将是只读的,无法进行编辑。主键字段应当是录入后就不再修改的,如果主键字段的数据被修改会造成数据库重新组织索引,影响数据库性能及稳定。
合理设置表中的索引,一般来讲,除了主键字段,仅建议对个别经常频繁用于查询条件的字段(如“客户表”的“客户名称”字段)设置索引,除此之外应该尽量减少索引的使用。因为索引的本来目的是为了提高数据库性能,但是对索引的维护成本是很高的,乱设索引很可能不但不能提高效率,反而会起到反作用!甚至在保证不影响参照完整性的前提下,为了提高和优化性能,外键字段的索引都可以去掉。
通过设置字段的属性等,在数据库系统的最底层对数据进行强制约束,如禁止重复(通过无重复索引)、是否必填项、字段大小等。这是最有效的方式,而如果仅仅是通过在数据录入编辑窗体中,通过代码去验证限制,一旦程序有所疏漏,就会造成错误数据被保存,有的时候这种错误在短时间内不会引起注意,只有当很长一段时间后因为数据的误差已经很大了才会被注意到。这里要注意的是,尽量使用最基础性的约束,如必填项、字段大小,这样基本上在任何关系数据库中都有效。在“有效性规则”中则尽量避免使用 VBA 函数,因为换成其它后台数据库将不受支持,将其验证逻辑放到数据录入编辑界面的程序中去实现和处理。
仔细设置好字段的其它非数据限制性属性,如格式、小数位数、输入掩码、标题、显示控件等,如果控件为组合框、列表框,还应该设置好其行来源、列宽等属性,这些属性不会对数据的有效性产生作用,但是因为 Access 特性,使用快速开发平台的“数据模块自动生成器”或其它 Access 向导快速生成窗体时,就可以自动将这些字段属性应用到相应窗体控件上,而不需要再去逐个添加控件,设置其属性。尤其是当需要重新设计窗体、报表,或者该表会在多个窗体、报表中使用时,就可以省却无数枯燥的重复性工夫,一劳永逸。
通过关系视图界面建立表与表之间的有关系,每个关系的“实施参照完成性”属性都应该选中,用来保障相关联表中数据的完整和有效。因为一般来讲主键字段都是应该是生成后不会再被修改的,“级联更新相关字段”属性基本上可以忽略不用理会;“级联删除相关字段”则需要根据实际情况决定,如“订单表”和“订单明细表”就可以使用级联删除,删除订单时订单明细肯定也需要删除,但“客户表”和“订单表”中就不应该使用级联删除,因为删除客户就会造成删除所有与该客户相关的订单,这显然不是我们想要的,不使用“级联删除”只使用“实施参照完整性”则会阻止该删除操作。
关于查询设计的要点
在管理信息系统软件中,对数据进行统计汇总,然后得出结果统计报告,是价值最高的部分。而对数据的统计汇总功能,基本上都是基于“查询”的。而所有的查询,实际上又都是基于 SQL(结构化查询语言)的,每个查询对象,其本质都是一个 SQL 语句。虽然在 Access 中提供了可视化的查询设计界面,可以帮助我们在不了解 SQL 的情况下,方便的设计查询功能,但是要实现更加高级复杂的数据统计汇总功能,还是非常有必要掌握 SQL。
学习和掌握 SQL 的一个好的方法是,先使用查询向导或者查询设计视图来创建查询,然后切换到查询的 SQL 视图,查看其 SQL 语句是如何写的,基于两者进行对比揣摩,能让你很容易的理解和掌握 SQL。
关于窗体设计的要点
《盟威软件快速开发平台》中的“数据模块自动生成器”,只是一个辅助工具,它只是辅助你方便快速地完成一些最基础的重复性工作,但不能替你完成所有工作。基于单个表时,自动生成的模块基本上可以无需修改就能使用,但对于主子表结构的订单式窗体,由于其复杂性,很多情况下仍然需要你在自动生成后进行适当的修改才行。
使用“数据模块自动生成器”生成的数据编辑窗体,对于单条记录,默认采用非绑定式窗体,而对于多条明细记录,则默认采用绑定至本地临时表的方式。这种模式是经过多年实践经验总结出来的在 Access 中最佳实现方案,因此建议大家在实现数据编辑时也都采用这种方式,虽然在快速开发平台中并没有强制要求这样做。
关于报表设计的要点
报表只是提供数据的最终输出,因此它不需要像窗体那样需要进行复杂的编码工作,甚至大部分情况下完全不需要编写代码。
Access 的报表体现了非常明确的关系数据库的特色,即行可以任意,而列(字段)是固定的。因此对于列不固定或者格式复杂的报表,可能它就不太胜任了,勉强用 Access 来实现报表就很不合算,会浪费掉你太多时间。这种情况下,可以将数据输出到 Excel 模板,因为它们都是微软 Office 中的组件,能够深度结合实现互相交互,我们就能利用Excel强大的报表功能,随心所欲地实现任何我们想要的报表效果!
原文地址:https://www.cnblogs.com/wwwwww222/p/9049256.html