Reputation: 4888
I want to create an application to send newsletters. I thought of storing all the information in a database (name, address, messages etc.) in a few tables. However, I wonder wheter this is the way how the real applications are done. In my case I have the SQL server installed on my computer so I can connect to it locally. What if someone else uses the program, but has no server installed on his computer?
I need this information for my univeristy project. I have to use ADO.NET.
Upvotes: 3
Views: 308
Reputation: 368
Get a copy of SQL Server Express Edition. It should cover your needs for local development. When deploying it, Windows Azure, or a separate dedicated SQL Server instance would be suitable.
Upvotes: 0
Reputation: 5213
So you have two layers:
And many users may access the application. So or they share the app layer or they share the db layer.
Web application is a way to solve the matter. Both the app layer and the db layer are remote (and generally not in the same server) and user can access the app layer no matter where the db layer is.
In your scenario the app layer is a desktop application. So the db should be shared. Have a look at the Azure infrastructure. It is a cloud infrastructure by MSfeaturing a db layer.
For full stand alone app, see the solutions suggested in the other posts. But remember that full stand alone app does not share data between different installation.
Upvotes: 0
Reputation: 437774
If you need the data to be shared across multiple clients then you have to deal with the logistics of a central data store.
If it's OK for the data to be local-only, System.Data.SQLite is probably the best choice as it gives you simplicity of deployment (just copy a file), lots of features, and an ADO.NET interface.
Upvotes: 1
Reputation: 499352
You can use an embedded database - this is normally a file based database that you can distribute with the application.
SQL Server CE and Sqlite are two popular options.
Upvotes: 2