As of now, APEX can not directly connect to external databases like SQL Server. As an alternate, you may use Web Service and host it on the server where the SQL Server is or on any other web server. APEX calls the Web Service and the Web Service does the SQL Server database operations.
Reference: Salesforce Knowledge Article, Another Blog Discussion
On another note – Plateform Connect has been included in Winter 15 release. Will need to see if it has bidirectional data access capabilities i.e. data in SQL Server are accessible as read as well as write mode.
Reference: Salesforce Knowledge Article