Making a Database Online
Your requirement of having a database accessible from many remote locations is not uncommon.  

If I were to do this, I would build a Windows Communication Framework (WCF) service that provides access to the database indirectly.  The WCF Service typically resides on a web server, where it operates as a proxy for the SQL Server.  The WCF service could provide security for the database by various authentication mechanisms; that is beyond the scope of this answer.

For information on WCF, check these documents:

http://msdn.microsoft.com/en-us/library/ms731082%28v=vs.110%29.aspx

http://www.codeproject.com/Articles/42643/Creating-and-Consuming-Your-First-WCF-Service

http://code.msdn.microsoft.com/Create-a-WCF-Service-c3486993