1) Класс SqlConnection является частью пространства имен System.Data.SqlClient и считается частью ADO.NET.
2) OleDbConnection для подключения к базам данных OLE. Если вы говорите о создании независимого от платформы уровня доступа к данным, вы должны использовать System.Data.Common.DbProviderFactories для создания общих объектов DbConnection, DbCommand и т. Д., Как в следующем примере кода:
Dim objFactory As DbProviderFactory = DbProviderFactories.GetFactory(ConfigurationManager.AppSettings("DbType"))
Dim objConnection As DbConnection = objFactory.CreateConnection
objConnection.ConnectionString = strConnectionString
В этом примере вы сохраните имя фактического провайдера, которого используете в настройках приложения.
Обратите внимание, что универсальные объекты БД поддерживают только методы с наименьшим общим знаменателем, поэтому, если вы ищете что-то специфичное для платформы, вам не повезло. Также, конечно, вам нужно будет указать действительный тип DB для фабрики провайдеров, что означает, что вам придется использовать один из встроенных провайдеров (ODBC, MS SQL, Oracle, OLEDB) или сторонний. Я думаю, что вы могли бы обойтись без ODBC, если у вас есть драйвер ODBC для вашей платформы, но я мало что знаю об этом.
Для получения информации о различных объектах подключения, включенных в ADO.NET: MSDN-подключение к источникам данных