我2005年就开始用VBA(access)开发系统了,刚开始也不知道access可以用来开发软件,一直以为它只是个数据库而已,并对项目管理人提出干嘛不用VB,delphi等来做呢,反正当时也不记得怎么回答我的了,后来发现用access开发真比VB要快速,
我列一下VBA的好处
1>很明显的一点就是报表,由于VB自带的报表功能极少,得要安装个水晶报表,但水晶报表又大又麻烦,不好好看一下教程真的不懂用,access自带的报表又快又简单,用一阵子它的优势就显现出来了.
2>链接表功能,一旦链接下来,不用理会那些表来自于哪个数据库,无论是access,mysql,mssql或别的,也不论你同时链接几个不同数据库的,只要数据库开发商提供好驱动,只管都链到access里,当做一个数据库用,多省心,不比得VB,c#,得每一个链接写一个connection+conn,搞得话句老长老长的,
3>语句简单,比如话打开数据表操作,直接docmd.execute(sql)就够了,都不用管怎么打开表的,
用VB得先有个连接语句connectionstr然后到连接conn,再打开conn.open 然后再对表进行操作
4>窗体设计快速,我经常是这样的,设定好一个窗体的样式做为模板,然后不断copy利用,VB不行,VB得改不少东西,
5>测试方便,无论在哪台电脑运行出问题一把原码拿过去运行了就知道哪里有问题了,VB,C#,delphi这种笨重的安装程序就麻烦了,不可能每台机都安装试一下吧?
6>还有宏呀,查询等可以手脚并用我就不说了,
ACCESS有ACCESS的好处,当然它也有别的开发工具没有的缺点,我也来讲讲
1>开发功能的局限性,ACCESS总归是microsoft在一个数据库上建立起来的一种开发工具,他不可能随心所欲地开发你想到的东西,加上做为一个数据库安全性的考虑,microsoft做了很多的限制,比如2003,一打开就说非安全文件之类的,要按几次确认或否,如果你要做一个机器人系统,自动出报表,自己发邮件,那ACCES就麻烦了,开启的时候要按几次,一开始就自动不起来了,用VB就省事了,直接生成个exe文件去运行就好了.
2>使用功能的局限性,由于ACCESS不能生成dll文件,如果一个项目三个人开发,每人只管自己的东西,也不准知道别人的东西,用ACCESS是做不到的,只能用vb,c#来搞,每人只管做自己的,然后生成dll给项目主管调用.
3>还是功能上的,因为是microsoft限制了中英繁还有别的语系的的共通性,所以当你的access系统在命名上只要有一点丁的中文或中文标点,拿到别的语系电脑上运行就会出错,这种出错会让你头皮发麻,因为你根本就不会想到原来是加多了个中文标点在里边,100多个窗体,几十万的代码,哇,检查起来真是要命.这个我可是深有体会.....
再讲讲我是怎么用ACCESS来开发一个中大型的物流软件和其他系统的
1>我不会用access本身数据库,因为太慢又会自动变大,我用mysql,
2>链接表,为什么不用呢?这么方便的功能
3>不用查询也不用宏,我就奇怪别人老喜欢这两样东西,但我不感冒,我直接用sql语句解决
4>报表还是用access的,因为都是一些access能力范围内的报表,
5>说到语句,不要以为真的access可以不用半点vba语言你就能做个系统出来,那是有点自大的说法了,很多功能没有vba你是完成不了的,那种没用到vba语句的软件充其量也就是个自己懂得使用的软件或工具,别人不会买的,所以想学软件开发的,语言是重点..
我随便一个软件的代码量都是庞大的.
好了,先说到这,以时间再发表点对大家有用的东西...