Making a Database Online I am so confused with this issue,  I have vb.net application and it has a sql database .

Now, I want this application to access the sql server from anywhere , because there are many clients sharing the same database from many regions.

I don't want to make my current sql server available online by opening ports and allowing TCP remote connections, I am looking for a hosting service or solution that provides sql server database hosting. 
I just found web hosting services, and they do not allow users to use thier sql databases remotely for storage purposes. 

Another words, I want to access it anywhere by some IP or domain or shared server, not by letting my computer working 24 hours to serve clients connections.

Thanks
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