Perhaps a bit of an odd question but I can't think of a way to achieve what I want.I produce a product which ends up installed on-site at clients premises. It is a business critical and high availability application, and has to handle processes very quickly.While obviously most of the work goes into the actual application (Windows Services) part of the reason why the product is so good is intelligent database design.  Until recently I usually provided the servers and I was the only person to have access to the database and SQL Server instance. However more recently customers have asked to run the application on their production server, usually VMWare, and use their SQL Farm for the database. This is fine for the application, however I am worried about who will have access to the SQL server and if they would be able to have a poke around in my application's database.Is there anything I can do to prevent access to it? Or is it a case of if they're hosting it there is nothing I can do?ThanksEDIT:If I am hit by a bus, company folds etc. there is an escrow agreement which will give them the source code of everything they need.As to why I am worried I have seen examples in the past of people making changes to data tables and reports, and no they did not have  the nous to do so. This meant that someone had to go in and fix everything, while of course we charge for this I was wondering if there was a way to avoid it all together, or at least minimise the risk.
Protect Database Design - SQL
sql;intellectual property