How can I make data in an Access database on a server available to a VB.NET Windows form application on another
computer over a WAN? The server is an NT machine with IIS installed. Using an Access database as a sort of database server is asking for trouble, in my opinion. You should move to MSDE (which is also free to distribute with several product licenses, such as VS, Office, etc.), which will scale much better, will give you real stored procedures, security and an inmediate path of upgrade to the full SQL Server. MSDE uses the same engine as SQL 2000, with limits on concurrent connections and database size. However, most of these limits are practically unreachable for an access database (performance-wise at least). You can install the trial version of SQL Server 2000 and perform the upgrade to your database, and then use MSDE in the production environment.
Reaching the DB is the easy part. If the application will run inside a VPN across the WAN, you can connect just as you do locally, with the machine name. If you're going through the Internet, you have to enable TCP/IP client protocol on the server and just connect to it from the other end with the appropriate connection string. This is not quite secure, however.
Another cool way of exposing the information in a MSDE/SQL 2000 database is through SQLXML. It allows client applications to issue queries and get results in XML format through standard HTTP calls.
Dig deeper on .NET development community
Related Q&A from Daniel Cazzulino
Here Daniel Cazzulino explains how to load a DSL (domain specific language) domain model instance file programmatically. This requires the .NET type ...continue reading
Here we offer a glimpse at 12 of .NET development expert Danny Cazzulino's top ASP.NET questions and answers.continue reading
C# developers should NOT be modifying InitializeComponent method in the code-behind (or any of the variable definitions) by hand.continue reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.