all groups > dotnet ado.net > may 2006 >
You're in the

dotnet ado.net

group:

Why choose SQL Express over Access?


Re: Why choose SQL Express over Access? james.curran NO[at]SPAM gmail.com
5/30/2006 1:29:37 PM
dotnet ado.net:
Well, I'm not sure what you mean by "requires an installed application
to work". I just downloaded it, ran the setup & it worked. And, since
your reluctance to do that is the *ONLY* requirement you specify for
your database needs, it's really hard to answer your question.

So, the advantages of SQLExpress over Access, as I see them.
1) It's free.
2) It's directly compatible with Sql Server.
Re: Why choose SQL Express over Access? Frank Rizzo
5/30/2006 3:48:17 PM
[quoted text, click to view]

Yeah, they change product names every 5 minutes, which is why they'll
never amount to anything. However, I used the product a couple of years
ago and it is solid. It has all the drivers and easy of use and
surprising performance and all that.

[quoted text, click to view]
I don't think Sybase has anything to do with Borland. You got your
vendors confused.


[quoted text, click to view]
Re: Why choose SQL Express over Access? Frank Rizzo
5/30/2006 3:49:50 PM
[quoted text, click to view]

There is one more Access advantage: it'll run on Windows XP Home
Edition, while SQL Express will not (requires XP Pro). So if you are
targeting mom&pop shops or the home market, either do Access or stick to
MSDE.

Why choose SQL Express over Access? ljh
5/30/2006 4:22:23 PM
Why would you choose SQL Express (which requires an installed application to
work) over the simplicity of an Access database which has no dependencies?


Re: Why choose SQL Express over Access? Sahil Malik [MVP C#]
5/30/2006 4:40:31 PM
Short incomplete list of reasons -

- SQL Express (or SQL Server in general) will scale better to multiple
users.
- It will give you a "way out" when your DB exceeds 4GB
- It will be easier to maintain from a DBA point of view (centralized
backups *.*)
- It will give you a much richer feature set - notification, SQLCLR, better
T-SQL*.*
- It will give you better performance (No OleDb necessary)
- You won't have to compact it as often
- Better support for data types/indexes etc. etc.
- Other reasons.

The only advantage Access gives you is "File based deployment". And frankly
SQL Anywhere (or was it everywhere - I loose track in all these name
changes) should be a better choice for desktop-ish applications anyway.

- Sahil Malik
http://www.winsmarts.com


[quoted text, click to view]

RE: Why choose SQL Express over Access? Peter Bromberg [C# MVP]
5/30/2006 4:54:01 PM
If you really are looking for a lightweight, fast, no - deployment database
then why not look into SQLite? There's an ADO.NET and an ADO.NET 2.0 provider
(thanks to Robert Simpson) and it screams compared to MS Access. Not even an
MDAC dependency.
Peter

--
Co-founder, Eggheadcafe.com developer portal:
http://www.eggheadcafe.com
UnBlog:
http://petesbloggerama.blogspot.com




[quoted text, click to view]
Re: Why choose SQL Express over Access? ljh
5/30/2006 5:00:02 PM
I mean that you can use Access databases simply by including the .mdb files
with your application, whereas using SQL Server Express requires that you
install SQL Server Express and have it running in the backgound.

In the event that I use SQL Server Express and need to redistribute it with
my app, is there a silent install available?

[quoted text, click to view]

Re: Why choose SQL Express over Access? ljh
5/30/2006 5:06:58 PM
I can't find anything on SQL Anywhere - even on the Sybase site.

The closest I can get is a SQL Anywhere link that actually shows you
something called "Remoteware" (whatever the hell that is) -
http://www.sybase.com/products/mobilesolutions/sqlanywhere .

I don't really trust Borland anyway. They jumped right in line with the
whole .Net mantra - when they had a better way of doing things and they have
abandoned Kylix without ever admitting to doing so.

They do enough to keep the Borland name alive....but that seems to be about
it.

[quoted text, click to view]

Re: Why choose SQL Express over Access? William Stacey [MVP]
5/30/2006 7:00:46 PM
Another option for you may be SQL Everywhere. I think will be released this
summer. 1.4mb with 7 dlls.
http://blogs.msdn.com/stevelasker/archive/2006/04/10/SqlEverywhereInfo.aspx

--
William Stacey [MVP]

[quoted text, click to view]
|I mean that you can use Access databases simply by including the .mdb files
| with your application, whereas using SQL Server Express requires that you
| install SQL Server Express and have it running in the backgound.
|
| In the event that I use SQL Server Express and need to redistribute it
with
| my app, is there a silent install available?
|
[quoted text, click to view]
| > Well, I'm not sure what you mean by "requires an installed application
| > to work". I just downloaded it, ran the setup & it worked. And, since
| > your reluctance to do that is the *ONLY* requirement you specify for
| > your database needs, it's really hard to answer your question.
| >
| > So, the advantages of SQLExpress over Access, as I see them.
| > 1) It's free.
| > 2) It's directly compatible with Sql Server.
| >
|
|

Re: Why choose SQL Express over Access? William Stacey [MVP]
5/30/2006 7:19:48 PM
It is Sql Everywhere. Check out the faq in the linq I gave above. For the
most part, it is Sql Mobile with a license change that will run anywhere
(XP, etc).

--
William Stacey [MVP]

[quoted text, click to view]
|I can't find anything on SQL Anywhere - even on the Sybase site.
|
| The closest I can get is a SQL Anywhere link that actually shows you
| something called "Remoteware" (whatever the hell that is) -
| http://www.sybase.com/products/mobilesolutions/sqlanywhere .
|
| I don't really trust Borland anyway. They jumped right in line with the
| whole .Net mantra - when they had a better way of doing things and they
have
| abandoned Kylix without ever admitting to doing so.
|
| They do enough to keep the Borland name alive....but that seems to be
about
| it.
|
[quoted text, click to view]
| > Short incomplete list of reasons -
| >
| > - SQL Express (or SQL Server in general) will scale better to multiple
| > users.
| > - It will give you a "way out" when your DB exceeds 4GB
| > - It will be easier to maintain from a DBA point of view (centralized
| > backups *.*)
| > - It will give you a much richer feature set - notification, SQLCLR,
| > better T-SQL*.*
| > - It will give you better performance (No OleDb necessary)
| > - You won't have to compact it as often
| > - Better support for data types/indexes etc. etc.
| > - Other reasons.
| >
| > The only advantage Access gives you is "File based deployment". And
| > frankly SQL Anywhere (or was it everywhere - I loose track in all these
| > name changes) should be a better choice for desktop-ish applications
| > anyway.
| >
| > - Sahil Malik
| > http://www.winsmarts.com
| >
| >
[quoted text, click to view]
| >> Why would you choose SQL Express (which requires an installed
application
| >> to work) over the simplicity of an Access database which has no
| >> dependencies?
| >>
| >>
| >>
| >
| >
|
|

Re: Why choose SQL Express over Access? ljh
5/30/2006 7:37:34 PM
I have a company that runs several (6 - 10) small stores that does the
rent-to-own thing. The software they have now is generic and the service
sucks. They want a personalized solution for thier rather unique product
line.

Thing is......they want all stores to share information (real-time of
course), they want information stored locally in case there is an internet
outgae, and they don't want to buy a SQL Server license for every store.

So.....I need to come up with a free way to have shared, locally replicated
data at each store.

Theoretically it is pretty simple.

Practically, its a pain in the ass.


[quoted text, click to view]

Re: Why choose SQL Express over Access? ljh
5/30/2006 7:41:29 PM
Awesome!

It doesn't look like they'll let us use it to power webservices under IIS
though.

That would suck. Allowing its use under IIS would make hosted web
development so much easier!

It would let small companies with big ideas give those ideas a shot at
succeeding without spending several thousand dollars for SQL Server.

But, I don't think MS is all that interested in helping small businesses
grow. And, that's too bad. Doing so would actually fatten the bottom line
at MS as the little businesses need more MS licenses and maybe a "grown up"
version of SQL Server.

If they did, who knows, it might even unseat MySQL as the web db king.

Thanks for the great link!



[quoted text, click to view]

Re: Why choose SQL Express over Access? ljh
5/30/2006 7:44:41 PM
You're right..... I got Sybase and Borland mixed up. Must've been that
whole JBuilder collaboration thing that threw me.

They are definitely not the same company.

[quoted text, click to view]
Re: Why choose SQL Express over Access? ljh
5/30/2006 8:53:37 PM
I'm trying it out. But, I can't even get it to create an empty db so that
I can use the VS.Net 2005 tools to create the tables, columns, etc.

I type "sqlite3 test.db" at the C:\ prompt (where I have a copy of
sqlite3.exe. Then, I type ".exit" and look for the empyt db....but there is
nothing there.

Any suggestions?

[quoted text, click to view]

Re: Why choose SQL Express over Access? Sahil Malik [MVP C#]
5/30/2006 9:29:25 PM
Yup thats it .. SQL Everywhere.

SM :)


[quoted text, click to view]

Re: Why choose SQL Express over Access? Sahil Malik [MVP C#]
5/30/2006 9:29:47 PM
AHA .. good one !!

- Sahil Malik
http://www.winsmarts.com
http://blah.winsmarts.com


[quoted text, click to view]

Re: Why choose SQL Express over Access? ljh
5/30/2006 9:41:03 PM
Got confirmation from MS that they're deliberately breaking compatability
with SQL\e running under IIS - they call it "soft-blocking".

Sounds all fluffy and sweet....but what it means is that you won't be able
to use SQL\e to easily deploy webservices (actually you can;t use it to
deploy them at all - easy or not).

This goes right along with my experience with every single MS product I have
ever purchased. Thier slogan should be "When you need it *almost* right."

Oh well.....I'm still looking into the free SQLite. It has an add-in for
VS.Net 2005 support and is not limited to 4GB of data. Oh yeah...it's only
one file (no dependencies) and it's completely free.

I'll let you know how my testing with it goes.

[quoted text, click to view]

Re: Why choose SQL Express over Access? William Stacey [MVP]
5/30/2006 10:25:12 PM
| It doesn't look like they'll let us use it to power webservices under IIS
| though.

Couldn't you use SQL Express for that?

Re: Why choose SQL Express over Access? William Stacey [MVP]
5/30/2006 10:29:25 PM
| Got confirmation from MS that they're deliberately breaking compatability
| with SQL\e running under IIS - they call it "soft-blocking".

Not sure how they would do that other then via license. I mean a sql query
is not going to look any different coming from asp.net page or from your own
host?

| Sounds all fluffy and sweet....but what it means is that you won't be able
| to use SQL\e to easily deploy webservices (actually you can;t use it to
| deploy them at all - easy or not).

Again, I think you should at least be able to use SQL Express and it is
free. IMHO, that product is a sweet and generous gift from MS.
--
wjs

Re: Why choose SQL Express over Access? ljh
5/30/2006 10:40:39 PM
Yep....but that defeats the whole ease-of-use thing that a no-install
solution like SQLite or SQL\e provides.

Especially when you have a hosted web-app.....SQL\e would be perfect for
that. Nothing to "install" (i.e. register) on the hosts servers.

It's just that MS wants you to pay to do a decent web-app. IMHO, it helps
them control competition somewhat (at least from the little guys) to thier
web-centric offerings. What other reasons could thier be to specifically
disable it under any IIS process? Greed?

As far as I can see....if you're small and have a great idea, MS SQL is
probably NOT the thing to use (at least SQLite is easier to deploy and has
greater capacity than SQL\e or SQL\x).

[quoted text, click to view]

Re: Why choose SQL Express over Access? ljh
5/30/2006 10:43:14 PM

[quoted text, click to view]

Not sure.....that's the word I got back from Steve Lasker when I emailed him
earlier today.

[quoted text, click to view]

It is....for machines where you can install anything you want. For ASP.Net
hosted webservers, it sucks.

Re: Why choose SQL Express over Access? William (Bill) Vaughn
5/30/2006 11:11:47 PM
Ah SQL Express can be used with an IIS web site. SQL Everywhere cannot. It's
not designed to do so but SQL Express (still free) is.
Microsoft has done more for small business than any company I know. It now
offers three versions of its database technology for free. SQL Everywhere,
SQL Express and SQL Express Advanced Services that includes the Reporting
Services engine as well as Full Text Search.

If you just want to bash Microsoft, find some other forum.

--
____________________________________
William (Bill) Vaughn
Author, Mentor, Consultant
Microsoft MVP
INETA Speaker
www.betav.com/blog/billva
www.betav.com
Please reply only to the newsgroup so that others can benefit.
This posting is provided "AS IS" with no warranties, and confers no rights.
__________________________________

[quoted text, click to view]

Re: Why choose SQL Express over Access? Cor Ligthert [MVP]
5/31/2006 12:00:00 AM
Ljh,

[quoted text, click to view]

I see not much reasons why you cannot use better the Jet Engine over SQL
Express, if you want:

That every user can remove the database file at any time he wants
That your data is processed relatively slow
That you cannot use it as an InterNet database withouth webservice or
other webpart
To tell the path at deployment time
Create extra program parts for as the user wants to relocate his
database
Not much security of the data.
To deploy an empty database (wich is great if a user reinstalls and
overwrites his exising database)

Just my thought,

Cor

Re: Why choose SQL Express over Access? John B
5/31/2006 12:00:00 AM
[quoted text, click to view]
Sql Express is a lot more performant and scaleable than access.
If you get a db size over 1/2 GB or so in access you will probably run
into trouble with corruptions etc.
If you eventually need to upgrade to full Sql Server then its a straight
backup / restore operation of the database and you are up and running.
If you only need and will only ever need a very simple db mechanism then
access might be the way to go.

Re: Why choose SQL Express over Access? JimD
5/31/2006 12:00:00 AM
[quoted text, click to view]

Just use the example C# code on the site:

http://adodotnetsqlite.sourceforge.net/

Click on "Documentation & Examples" and then click on "C# SourceCode
Example". I just copied-n-pasted the code into a Console App project
and ran it and the DB was created for me. The DB is created in the same
folder as your compiled exe. So if you do a debug build look in the
Debug folder.

Sqlite is very nice, very fast, and supports most of SQL92, databases up
to 2 terabytes, BLOBs and a lot more all either a 250KB dll or the
reduced featur 150KB dll. Best of all is that it is Open Source. No
restrictions on usage. SQL Server is great for a full DB. However, for
anything less, MS just doesn't have a good offering IMO. I don't want
to deal with proprietary restrictions on where/how I can include a
database file with my app.

Give Sqlite a shot, I think you will be pretty happy with it.

The steps to do a quick test console app:

Download Sqlite. Get version 3 without the TCL bindings:
http://www.sqlite.org/download.html

Download the ADO.Net data provider named Finisar.SQLite. Note, this
comes with a dll version of sqlite, however I use the version from the
official site listed above.
http://adodotnetsqlite.sourceforge.net/

Copy the sqlite dll to your system path, C:\windows or c:\windows\system32.

Create a new C# Console Application. Add a reference to the SQLite.Net
dll that you downloaded.

Now you can copy-n-paste the example code in your Main() method from here:
http://adodotnetsqlite.sourceforge.net/documentation/csharp_example.php

Happy hacking!

Jim
--
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
There's no place like 127.0.0.1
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
JimD
Re: Why choose SQL Express over Access? JimD
5/31/2006 12:00:00 AM
[quoted text, click to view]

<snip>

I forgot to mention about the connection string in the example. The
connection string is:

Data Source=database.db;Version=3;New=True;Compress=True;

The New=True token says to create a new database. So every time you run
the test program, you are creating a new database, overwriting the old.
You probably don't want to do that with a real application. So you
would only use the New=True in a connection string when you want to
create a database for the first time. After that, you can either remove
New=True or change it to New=False.


Jim
--
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
There's no place like 127.0.0.1
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
JimD
Re: Why choose SQL Express over Access? ljh
5/31/2006 12:48:51 AM
I was looking at the site () and came across "Version 1.0.14 of the SQLite
..Net Data Provider for ADO.NET 2.0/VS 2005 is out and includes design-time
support. You can now create databases, design queries, and drag-and-drop
tables to create typed datasets within Visual Studio 2005. "

Is this capability still in there? I didn't see any examples of this. If
SQLite is as easy to use as this quote seems to make it (i.e. as easy to use
in the ide as SQL Express) we may just have a winner here.


[quoted text, click to view]

Re: Why choose SQL Express over Access? ljh
5/31/2006 12:49:40 AM
oops! forgot the link to the page where I saw the quote......

http://sourceforge.net/forum/forum.php?forum_id=489095



[quoted text, click to view]

Re: Why choose SQL Express over Access? Sahil Malik [MVP C#]
5/31/2006 12:59:42 AM
Okay .. why does SQL express suck? It doesn't suck .. !!! It runs on a full
fledged SQL engine, sure deployment is a pain, but migrating to a fullblown
SQL Server is relatively painless.


Also, can you elaborate -

[quoted text, click to view]


?

- Sahil Malik
http://www.winsmarts.com
http://blah.winsmarts.com




[quoted text, click to view]

Re: Why choose SQL Express over Access? ljh
5/31/2006 3:07:47 AM
The fact that you can't control SQL Express (due to the fact that you
usually don't control the HOSTED servers) and that you could get more data
into SQL Everywhere (or SQLite for that matter) simply by using the
available disk space than you do with most hosted website's db plans (which
will include hosted SQL Express servers) sucks!

The fact that MS has an edition of Mobile SQL that they are making available
for everything except IIS use sucks!

The fact that Micrsoft added code to SQL Everywhere to PREVENT it from being
used in an IIS process sucks! What about that don't you get?

Microsoft again makes a valiant run downfield with the ball.....only to stop
and sit on the 1 yard line.


[quoted text, click to view]

Re: Why choose SQL Express over Access? ljh
5/31/2006 3:09:42 AM
"INETA Speaker" - at least you're unbiased.


[quoted text, click to view]

Re: Why choose SQL Express over Access? ljh
5/31/2006 3:18:40 AM
The connector for VS 2005 (.Net 2.0) makes connecting to the SQLite db a
snap.

But, it lacks any means of database manipulation (i.e. adding/removing
tables or columns or anything) from within the IDE.

So, ease of use is definitely not up there with SQL Express.


[quoted text, click to view]

AddThis Social Bookmark Button