SQL Licencing Headaches.

G

garyusenet

Please explain to me.

Im writing an app using visual studio professional and sql server
express (although I also have sql server with one client licence.)

My app uses c# , windows forms, and an sql database.

When finsihed I will need to install my app on 12 office machines.

I want to install the database it uses on our fileserver, so the 12
office machines can connect to it.

Do I need to purchase additional licencing to do this? (microsoft is
totally vague on there website) - Or can I run the sql database from
the server and connect into it, without the need for additional
licences?

Thanks,
Gary.
 
J

jeremiah johnson

if you are going to have all 12 office computers connect to the database
directly, then yes.

if you are going to have all 12 office computers connect to some proxy
program, that then is the sole connection to SQL, probably not.

jeremiah();
 
G

garyusenet

Please can someone elaborate on this.

proxy connection? can someone explain in pragmatic terms what the
licencing situation is here?
thanks.

Gary.
 
J

Jianwei Sun

I think what he means, that you write some programs acting like a proxy
server.

So your programs on that 12 machines will connect to your proxy programs
firstly, and you can only allow your proxy program to open one single
connection to the sql server.
 
S

scott blood

Gary,

The licencing around SQL Server is very complex. I dont think Microsoft
intentionaly do this.

The first option you have is a processor licence. This is the cheapest
license for most business needs if they have many users. Basically for
every processor in your server you pay a fee.

The second option you have is a server license with CAL's (Client access
licenses). This basically means you pay for the server (1 per operating
system) and pay for each individual client that is accessing the server.

The third option is exactly the same as above only that you pay for each
machine that accesses the server and not the individual user.

All in all for 12 users the best option is probably the processor license,
the first option. This would work out at about £3000 dependant on who you
buy it from.

Regards
Scott Blood
C# Developer
 
G

garyusenet

Hi,

can I use something like mysql? i've heard of it but thats about all.

My application is a simple lead management program. Im looking for a
database solution that doesn't incur any licencing fees.

So far my app is one windows form, with controls databound to a sql
database i've created by 'new connection' and just typing the name of
the sql database i wanted.

my only db experience is with access, and you simply wrote the
database, and paid per client for access. Thus my jaded logic says my
interface i've written (i.e. the windows form app) so there's no client
licence to pay now... so why should I pay to have the file sit on a
server and have data written to and from it? it seems crazy.

Your advice is very appreciated!

Thanks, Gary.
 
J

Jacob

I was not aware that there were any licensing requirements to use SQL
Server Express. Microsoft keeps referring to it as the free but scaled
down version of the "real" SQL server.

"SQL Server 2005 Express Edition is the free, easy-to-use, lightweight
version of SQL Server 2005. SQL Server Express is free to download,
free to redistribute, and easy for new developers to use immediately."
- from Microsoft's own page -
http://www.microsoft.com/sql/editions/express/default.mspx
 
G

garyusenet

It's free to use in a single user environment, not a multiple user
environment... That's what I thought - am i wrong?

Thanks,

Gary.
 
R

Robert Johnson

Gary, you might want to look at Firebird. Its a robust full featured system
with a .net connection (so I've been told) and Its free with no
restrictions. Its based on the Borland Interbase so it has a long history.
http://www.firebirdsql.org

HTH

Robert
 
S

scott blood

Gary,

You are right and wrong :)

Microsoft from what i can see do specify that you cannot distribute the
engine for small applications as was the same for MSDE. Which is theory
means, pop SQL Server Express on a server and just go for it.

However, think of the limitations of the server. Its databases can only
grow to 2GB in size, which is quite a lot and could sustain a small
application for a few years. However, it can quickly grow in size in data
intensive applications such as CRM and Sales applications.

It is also limited to 1GB in memory and 1 single core process (Multiple core
processors will not work with SQL Server Express or it will only use one
core).

1 GB of memory seems a lot i hear you say, but considering you are running a
database server, i think the minimum you should run is about 100meg per
connection basically to help with data manipulation and paging on the
server, but this is my own opinion and i am sure other people would suggest
less or more.

Other good free databases systems are MySql (never used it though) and
Interbase (Firebird), i used this extensivly with Delphi, but never C#.

Regards
Scott Blood
C# Developer
 
J

jeremiah johnson

can I use something like mysql? i've heard of it but thats about all.

Yes. From what I understand, MySQL is free for personal and commercial
use, but if you want any support, you pay for that. There is a .NET
library you can use to connect to MySQL called the MySQL Connector/NET.

PostgreSQL is another option, as is the afore-mentioned Firebird.
My application is a simple lead management program. Im looking for a
database solution that doesn't incur any licencing fees.

Then MySQL/PostgreSQL/Firebird is probably what you would be best using.
So far my app is one windows form, with controls databound to a sql
database i've created by 'new connection' and just typing the name of
the sql database i wanted.

None of the free database I've mentioned offer connectivity that is that
simple, but connecting to those database servers isn't any harder than
SQL if you do the connection entirely in code. It will be a learning
experience, and its not very hard at all.
my only db experience is with access, and you simply wrote the
database, and paid per client for access. Thus my jaded logic says my
interface i've written (i.e. the windows form app) so there's no client
licence to pay now... so why should I pay to have the file sit on a
server and have data written to and from it? it seems crazy.

Any licensing scheme that is based on client connections, is goofy, in
my opinion.

jeremiah
 
J

John Murray

Based on the EULA, it looks like you can distribute sql express with
your application, similar to what you could do with MSDE.


From the EULA:

a. Distributable Code. You are permitted to distribute the software in
programs you develop if you comply with the terms below.
i. Right to Use and Distribute. The software is “Distributable Code.”
• Distributable Code. You may copy and distribute the object code form
of the software. You may not modify the software, and your programs must
include a complete copy of the software, including set-up.
• Third Party Distribution. You may permit distributors of your programs
to copy and distribute the Distributable Code as part of those programs.
ii. Distribution Requirements. For any Distributable Code you
distribute, you must
• add significant primary functionality to it in your programs;
• require distributors and external end users to agree to terms that
protect it at least as much as this agreement;
• display your valid copyright notice on your programs; and
• indemnify, defend, and hold harmless Microsoft from any claims,
including attorneys’ fees, related to the distribution or use of your
programs.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top