Skeptic said:
Sean,
That guy is talking crap. An Access database can be used
with VB.Net, JSP pages, HTML, and Access's IDE.
Having a bad day..are we?
The fact of the matter is that ms-access is NOT a database. I repeat,
ms-access is NOT a database. You can write your ms-access application, and
the data store can be Oracle, SQL server, or the default data engine called
JET.
In fact, for the last 3 versions of ms-access, you don't even have to use
JET at all, and can use a 100% OLEdb connection to sql server. This means NO
local quires, and this means NO local tables. In fact, it means 100% of the
query processing occurs on the server side. In fact when you use an access
project, you CAN NOT even have local tables!
Access is a appropriately called "access", since it is a client development
tool to your favourite database engine of choice.
The database engine you likely are referring to is the JET database engine,
and you don't have to install ms-access to use that engine. So, sure, you
can use the JET database engine to work with a mdb file. And, yes...you
don't even need to install ms-access.
The benefit of not using Access's IDE is not having to
confront the learning curve he was talking about.
Well, I just had started that the learning curve in ms-access is not that
easy!
The programming language in ms-access is VBA, and for all intensive
purposes, this language is 99% the same as VB6. The ONLY difference is that
the forms object model is different. I would be most un-fair if I did not
point out that since so much development in VB6 (or ms-access) centers
around the forms object model, then that certainly is a large difference
(however, the language is the same in both). So, while the programming
language in ms-access is the same as VB6, since so much of a application
centers around the forms object..then yes..there is quite a difference.
It is a
totally different world because it creates its own
language of development as it tries to call itself object
oriented.
I am not sure what you mean by the above. I will state that the learning
curve to learn the ms-access forms model IS MUCH LARGER then the learning
curve for VB6. The reason is simple:
ms-access forms have about twice the amount of properties, and has about
twice the amount of methods compared to VB forms.
For example, in ms-access we have both a forms on-open event, and a forms
on-load event. This is one of those brilliant design decisions that
ms-access has, but VB6 does NOT have. However, you are now faced with
learning, and having to understand the fact that you have two events where
as the lame VB forms only have ONE. Most developers jump into ms-access and
are complete oblivious to this marvellous change that ms-access has over
most IDE's.
The on-open event:
This event occurs as the forms opens. You can't yet modify data, nor has
the form yet displayed. However, you can examine data, and if some criteria
is not met, then you can set cancel = true, and the form does not load (try
that in VB6...a REAL YUK situation to duplicate). The workarounds in VB6 are
real messy, and a pain to implement. In fact, often he solution is to check
in code BEFORE the form loads (great..now you need code every time BEFORE
the form loads...yuk!). I have often used the on-load event for record
locking, and if it fails...you can bail out of the form load. What is nice
is that the form does NOT display, and all of the forms on-load
(initializing) setup code does NOT run.
Once the form is opened, we then have the on-load event. In the on-load
event we place stuff like initializing your class objects, and all the forms
module setup code goes in this event. In other words, in ms-access we have a
brilliant design as the two events thus separates "checking" / "test" code
vs start-up and initializing code. This is something that we never had in
VB6. It also means it is something that as a developer one never has to
learn either!.
Similarly, on the close side, we have:
Before update
After update
on close
on un-load
on deactivate
on lost focus.
I count 6 events that you "may" have to deal with when closing a form. How
many events do you deal with when you close a form? Heck, for delete a form
we have:
On Delete
On Del Confirm
After Del Confirm.
I could write for pages and pages here. Suffice to say that the amount of
stuff you have to learn in ms-access is MANY TIMES that of VB6 forms.
So, as I said, ms-access forms actually have a steeper learning curve then
VB6.
However, due to wizards and the ease of use (those bound data forms), then
you can START using ms-access forms quicker and a lot easer then VB6 forms.
Further, the fact of more complex forms in ms-access means that the FORM
does all the work for you, and you don't have to write reams and reams of
code. This is why development in ms-access is 3 or more times productive
then is vb6. I mean, really,each system lets you place controls on the
screen at the same rate....it is what you do after is the key!
So, while ms-access is easer then VB6, ....after you get going...the
learning curve for ms-access forms is actually LONGER then are VB6 forms to
use!
And, by the way, I often write and develop class objects in ms-access. You
can read the article of mine here:
http://www.attcanada.net/~kallal.msn/Articles/WhyClass.html
It even steps out of their own VB language to add more
and hides even more code behind the scenes for you to
decipher what it is doing because they hide it so well,
not to forget, the manuals don't help you when you start
getting good at what you are doing.
I am not sure if the above your talk about refers to ms-access? Having used
a lot of IDE's over the years, I HAVE NOT yet found a product that lets you
navigate FASTER then does ms-access to a particular event code. The IDE in
ms-access is rather impressive from a navigation point of view. You simply
run the application until you get to the point you want to modify the vb
code. You then flip into design mode. Any command or button can then be
right clicked and you jumped into the VB6 IDE. Having used both VB6, and
ms-access....ms-access wins hands down. I not going to even start about
things like placing labels beside controls....again ms-access is WAY better.
And, further ms-access does NOT use the lame VB6 controls. So, for example
our combo box allows multi-columns, and have MANY more useful properties and
methods (like the "not in list" event for example). Once again, the native
ms-access controls are FAR FAR better then the VB controls. However, it does
mean again that far more learning is required for using those controls! If
you just use the brilliant IDE, then placing and using those controls is
EASIER then VB6. However, to master those controls, and use code with them,
it in fact takes longer then VB6.
For example, our text boxes have both .value, and .text properties. So, the
IDE does not really hide the complexity...but ms-access just makes it so
easy to develop. (a big difference between hiding...and making something
easy..)
Further, ms-access has several brilliant designs in its forms objects. We
for example can switch a form into continues mode. This has got to be one of
the most brilliant design features of ms-access. For some screen shots of
continues forms and what I am talking about....check out:
http://www.attcanada.net/~kallal.msn/Articles/Grid.htm
The more you try to do, the less help you get!!!!!!!!!
Gee, I don't know what that above means? Ms-access is by far and aware the
most popular data client development tool out there. We answer in excess of
30,000 posts per month in the ms-access newsgroups (I am not kidding!) Show
me another product that has that many posts per month?
And, if you need some free and useable source code for a access problem, it
is hard to beat the number of web sites and code examples available for
ms-access. From both a free code example point of view, and from the number
of people who answer questions...ms-access can't be beat. I am really at a
loss at to what you mean by lack of help.....