views:

37

answers:

1

Hello;

I have created a windows forms application using Visual C# and ms acces 2007. The connection string to the database from the application looks like this.

<connectionStrings>
    <add name="CRMS.Properties.Settings.CRMSConnectionString" connectionString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\CRMS.accdb"
     providerName="System.Data.OleDb" />
</connectionStrings>

I have devloped both the database and windows forms development on a single pc.

I need to deploy this application on LAN with 8 pc's. The database will reside on the central pc with ip address 192.168.1.10. The windowsforms application will be installed on all the pcs including the pc on which the database file resides on. What are the steps i need to complete for a smooth and efficient deployment?

+1  A: 

You'll need to set up a network share that is hosting the access database. Then you'll have to point to either the UNC path of that shared file:

<connectionStrings>
    <add name="CRMS.Properties.Settings.CRMSConnectionString" connectionString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=\\192.168.1.10\ShareName\CRMS.accdb"
     providerName="System.Data.OleDb" />
</connectionStrings>

or using mapped drives "Z:\CRMS.accdb".

You might consider using the DNS name of the computer instead of the IP address so you don't have to change the connection string on each of the client computers if / when the IP address changes.

Of course, I would be remiss in my duties if I didn't point out that running Access over the network is painful from a performance and maintenance standpoint. I would consider importing your database into an actual network database such as SQL Server Express or MySQL (both free) for better performance and reliability.

RQDQ
Thanks RQDQ, your answer has everything I need, and sorry for the delay :)
tecno