Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Best Practice for flexible data connection
Message
From
14/01/2011 12:47:33
 
 
General information
Forum:
ASP.NET
Category:
Installation, Setup and Configuration
Environment versions
Environment:
VB.NET 1.1
OS:
Windows XP SP2
Network:
Windows 2003 Server
Database:
MS SQL Server
Application:
Desktop
Miscellaneous
Thread ID:
01496211
Message ID:
01496225
Views:
36
>>Hello Everybody.
>>
>>I have designed an application which is already fully functional on my system. I want to adjust it now to be able to make it a shrink wrap app.
>>
>>Currently that app is connecting to my MS SQL 2005 database. For it to be a shrink wrap the database connection should be flexible. Maybe the end customer already has SQL (any version) installed or maybe my app needs to install a light sql version, such as sql express or so.
>>
>>For this process I have a few questions:
>>
>>
  • Which light weight sql do you recommend?
    >>
  • Do I just need to change the connection string to the different database (given the table and fields are the same)?
    >>
  • Where do I change the connection string in the code? Or rather, should I have instead of the connection string a function call which returns the connection string?
    >>
  • How about username/password security? In my case here I am connection to a database which also has our enterprise data. I don't know if the password is encrypted and/or hidden - can someone get to it? How do I ensure this is save?
    >>
  • Any other thoughts concern to bring me on the right track?
    >>
    >>Thank you for all your great help!
    >
    >If you want to play outside the MS sandbox then, obviously, switching connection strings isn't going to be enough.
    >
    >Switching between SQL2000/2005/2008 and SQL Express shouldn't be an issue but building an install process that allows users to, for example, select an existing SQL instance or install a dedicated SQL Express server in a user-friendly way is not trivial.
    >
    >As far a 'lightweight' goes - it depends on your app. If you can get by with CE then it greatly simplifies things. A 2Mb footprint instead of 200Mb. No installation beyond including a couple of .NET DLLs with your app. A few downsides though such as no support for SPROCs etc. Here's an (oldish) white paper comparing SQL Express to CE:http://download.microsoft.com/download/A/4/7/A47B7B0E-976D-4F49-B15D-F02ADE638EBE/Compact_Express_Comparison.doc


    Hello Viv

    My plan is to stay with the MS sandbox.

    in regards to installing or/and selecting an existing db, i don't foresee too much problems. but we will see when i get to that. my concerns will be more on the installshield side (the free version) because i have not used it before and i am not sure where to do certain things. But I am sure you will hear from me when the time comes. :-)

    I think i can go with CE, because this is very simple data storage - no triggers, procedures, etc. - so i should be ok.

    I am very concerned about password security. Craig had mentioned the app.config file as the storage for the connection strings. So i checked that one and the final AppName.exe.config file - and sure enough, there is the password in plain day light. That is a huge problem. I realy think in my app it is better to have a application username/password rather then windows authentication.

    If you know of a way i can secure that - that would be great!
  • Previous
    Next
    Reply
    Map
    View

    Click here to load this message in the networking platform