Re: Starting with VB2005 and SQL Server 2008 Express Edition
- From: "Ralph" <nt_consulting64@xxxxxxxxx>
- Date: Wed, 22 Apr 2009 04:57:22 -0500
"NZSchoolTech" <nzschooltech@xxxxxxxxxxxx> wrote in message
news:%23ttSSMywJHA.5584@xxxxxxxxxxxxxxxxxxxxxxx
Good day,experience
I have a lot of programming experience in languages other than VB, but I
have done a limited amount of programming in it. I have extensive
with Microsoft Access in databases.run
I am looking at two options:
1. Connect MS Access to SQL Server 2008 Express and using the latter to
the data and Access just does reporting and data inputhandle
2. Writing a VB application to connect to SQL Server 2008 Express to
the data entry instead of using Access.used
There is nothing about VB that is inherently difficult for me, as I've
it before as well as other GUI development environments. However I'mfinding
it difficult to try out SQL Server 2008 Express to connect to a databaseinstead
from VB.
So far I've used the import tool on SS2008E to import an MDB into an MDF.
Now I want to know how to connect to the data from a VB application and
handle it. In Access we are just inputting data in simple forms and not
doing very much more than that with it. The reason I want to use VB
is to be able to get better multi-user performance with the databases than
Access will be able to handle, and I figured it should be really really
simple to do.
Whew! A lot of questions in there. <g>
First some basics might help to get you started. (If I get too pedantic and
yap about something you already know then just ignore me. Also this is a
limited media, thus many comments are necessarily "general" in intent - the
specifics may vary. )
MS Access, the Office Product, is merely an application that uses the Jet
engine and Jet-formatted database files as its storage. [There are now two
flavors of "Jet" the original "mdb" files and the new "ACE" with "accdb"
files.] The important fact is that these are file-based databases.
SQL Server Express is also a file-based database ("mdf") and should not be
confused with SQL Server which is a full-featured RDBMS - relational
database managment server. It is the latest attempt by MS to replace Jet
with an engine (independently developed) who's purpose is to supply a
front-end which acts identically to SQL Server. This is part convenience for
developing database applications and part marketing - by providing an easy
upgrade to buying SQL Server.
All this to address this comment ...
"The reason I want to use VB instead is to be able to get better multi-user
performance with the databases than Access will be able to handle."
Based on this and the fact you are considering SQL Server - it appears
you're really talking about two technologies, or sea-changes, here. (I
think?)
1) Replacing MSAccess applications with VB applications.
You can share a database with MSAccess or VB. Using MSAccess, as you
probably know will require all users to have MSAccess installed (or you to
purchase the MSAccess/Office developer's package). VB has the advantage of
developing applications that can be distributed without additional
licensing.
While MSAccess UI tools are convenient, you will have more options in
designing User interfaces with VB, however VB's reporting abilities frankly
suck. For a full VB replacement you will need a better Report Generator
($400 and up). You can use MSAccess reports from VB using Automation - but
there we go again - you would have to have all users have access to
MSAccess.
2) Replacing Jet-formatted file-based databases with SQL Server Express
file-based databases.
In this case you are going to have pretty much the same issues with SQL
Server Express that you will have (or are having) with Jet. The exact number
of users that can be supported with a shared database file varies
dramatically depending on what you are doing, the frequency, and the wire. I
have read some pretty amazing claims for both Jet and SQL Server Express -
but in my experience 18-24 seems about average when comparing two similar
very busy applications. Actually the number is usually less for SQL Server
Express Again it is difficult to quantify comparisons as things that are
quick in one, tend to be slow in the other, and vice versa. And there is an
effort to deliberately throttle the number of users with Express.
In summary, VB might facilite better looking, more robust front-ends, but
would do nothing to improve over-all multi-user performance. (Outside of
other distributed application configurations.) And since you already know
MSAccess (and presumbly only need to learn VBA for Access), it would appear
that you would be better off to investigate MSAccess projects. VB with Jet
or VB with SQL Server Express isn't going to improve multi-user performance.
You can adopt MSAccess projects to work with SQL Server Express (or SQL
Server) as a backend if you still want to abandon Jet. BUT ... MSAccess with
Jet, or MSAccess with SQL Server Express, isn't going to bring that much to
the table either.
Well that's enough of this ... I'll respond to your other questions later.
<g>
-ralph
.
- References:
- Starting with VB2005 and SQL Server 2008 Express Edition
- From: NZSchoolTech
- Starting with VB2005 and SQL Server 2008 Express Edition
- Prev by Date: Re: Starting with VB2005 and SQL Server 2008 Express Edition
- Next by Date: Re: Starting with VB2005 and SQL Server 2008 Express Edition
- Previous by thread: Re: Starting with VB2005 and SQL Server 2008 Express Edition
- Next by thread: Re: Starting with VB2005 and SQL Server 2008 Express Edition
- Index(es):
Relevant Pages
|