I wish to distribute an SQL 2008 database to some client and arrange it to ensure that the only method to access the information inside it is thru my application. Can One use Truecrypt for your? Are you able to think about every other solution?
No, isn't feasible. This really is requested frequently and the reply is exactly the same: safeguarding the information to ensure that is just functional in one application is DRM and SQL Server does not do DRM. There's no cryptographic/file encryption or authorization/permission mechanism you are able to occur spot to prevent the best administrator from seeing and taking advantage of the information because it sees fit, including granting other programs permission to apply your application data.
At worst you are able to secure all of the data within the client and store just the encoded blobs, thus making it useless holiday to a application. This method looses any advantage a relational database offers (data can't be looked, queried, indexed, foreign relations and constraints can't be enforced etc) rendering the SQL Server absolutely useless for the application. Besides, even just in this situation, lacking utilizing a hardware module, the information isn't trully protected because the application cannot embed any file encryption type in a secret fashion (any key embeded within the application, regardless of how obfuscated it's, could be retrieved, always) and depending around the user use a secret password means the consumer can easily decrypt the information.
If you wish to make use of a DRM plan (that you simply are really requesting), make use of a DRM product.
I have taken a fast take a look at Truecrypt also it does not seem like the tool for which you are attempting to do.
You should think about SQL Server Logins, Customers and Roles. The way you begin using these will rely on the way you setup your database connection. If you're able to provide more here is how you're hooking up I'm able to try to help further.