Your problem can have many reasons:
1) The Silverlight application cannot access the WCF service due to a cross domain issue.
Please read this:
Making a Service Available Across Domain Boundaries: https://msdn.microsoft.com/en-us/library/cc197955%28VS.95%29.aspx[
^]
2) The WCF service cannot access your SQL server due to missing rights
An application (your WCF service!) running in IIS
runs with a so-called Application-Pool Identity.
This is the default.
Please read:
http://www.iis.net/learn/manage/configuring-security/application-pool-identities[
^]
If you run your application on your local system
everything runs with the currently logged on user and that is you.
On the productive system your WCF service runs with an application pool identity
probably "IIS AppPool\DefaultAppPool".
By using SQL Server Management Studio you must grant this user access to your database.
Moreover it is a good idea to use exception handling in your WCF service.
This article shows you how to do it:
Exception Handling in WCF[
^]
This will allow you to find errors occurring during database access.