Что такое драйвер odbc
Обновлено: 24.11.2024
Используйте драйвер ODBC для переноса данных из вашего инструмента ETL или базы данных.
ThoughSpot поставляется с драйвером ODBC (Open Database Connectivity), чтобы вы могли передавать данные между ThoughtSpot и другими базами данных. Базовые знания по администрированию источников данных ODBC полезны при настройке ODBC.
Microsoft Windows 32-разрядная
Майкрософт Windows 64-разрядная
Совместимость версий и параметры подключения
Для обеспечения совместимости всегда используйте драйвер ODBC с тем же номером версии, что и у экземпляра ThoughtSpot, к которому вы подключаетесь. Вы можете установить безопасное соединение ODBC с базой данных ThoughtSpot, настроив комбинацию пользователя и пароля с помощью драйвера. Подробную информацию о параметрах подключения см. в свойствах конфигурации ODBC и JDBC
Поддерживаемые типы данных
Драйвер ODBC поддерживает следующие типы данных:
Совместимость исходных и целевых данных
По умолчанию ThoughtSpot использует разрешающий подход к совместимости типов данных между исходными и целевыми данными в ODBC. В этом режиме ThoughtSpot предполагает, что входящие данные точно соответствуют целевым типам данных, и загружает таблицу как есть.
В качестве альтернативы вы можете явно потребовать, чтобы ThoughtSpot точно соответствовал исходным типам данных, и, если он не может найти совпадение, он возвращает ошибку, и загрузка данных завершается сбоем. В этом режиме, например, если целевой тип данных ThoughtSpot для столбца — INT, исходный тип данных для этого столбца должен быть INT, чтобы загрузка данных прошла успешно.
Переключая параметры *strict* и *permissive* true и false, вы можете настроить параметры по шкале поведения между разрешительным, автоматическим подходом и строгостью подход "должен соответствовать".
Типы данных выводятся и автоматически преобразуются. ThoughtSpot возвращает ошибку в тех случаях, когда преобразование данных невозможно. Загрузка данных завершается с ошибкой, если какие-либо данные содержат несоответствия. Вы должны исправить ошибку в исходных данных и повторить попытку загрузки.
Строгость = истина , Вседозволенность = ложь
Исходный и целевой типы данных должны совпадать. Если какие-либо данные содержат несоответствия, ThoughtSpot возвращает клиенту сообщение об ошибке полной загрузки данных. Вы должны исправить ошибку в исходных данных и повторить попытку загрузки.
Это самая строгая конфигурация.
Типы данных выводятся и автоматически преобразуются. Никакой ошибки не возникает, даже если исходный и целевой типы данных не совпадают. Загрузка данных продолжается, даже если исходный и целевой типы данных не совпадают. Это означает, что ваша загрузка данных может содержать типы данных, которые вам не нужны или которые бесполезны. В этом случае вы несете ответственность за проверку и подтверждение данных.
Строгость = false , Вседозволенность = false
Типы данных не выводятся, и преобразование не проверяет совпадения. Это наиболее разрешительная конфигурация.
Ваш инженер службы поддержки может помочь вам настроить поведение ODBC. Независимо от выбранной вами конфигурации, вы должны убедиться, что результаты загрузки данных в том виде, в каком они появляются в ThoughtSpot, соответствуют вашим требованиям.
Матрица преобразования типов данных
В следующей таблице описана матрица преобразования между типами данных SQL и типами данных ThoughtSpot.
В вычислительном мире существует множество неправильных представлений об ODBC. Для конечного пользователя это значок на панели управления Microsoft® Windows®. Для разработчика приложений это библиотека, содержащая подпрограммы доступа к данным. Для многих других это решение всех проблем с доступом к базе данных, которые только можно себе представить.
Прежде всего, ODBC — это спецификация API базы данных. Этот API не зависит ни от одной СУБД или операционной системы; хотя в этом руководстве используется C, API ODBC не зависит от языка. API ODBC основан на спецификациях CLI от Open Group и ISO/IEC. ODBC 3.x полностью реализует обе эти спецификации — более ранние версии ODBC были основаны на предварительных версиях этих спецификаций, но не полностью их реализовывали — и добавляет функции, обычно необходимые разработчикам экранных приложений баз данных. , такие как прокручиваемые курсоры.
Функции API ODBC реализованы разработчиками драйверов для конкретных СУБД. Приложения вызывают функции этих драйверов для доступа к данным независимым от СУБД способом. Диспетчер драйверов управляет связью между приложениями и драйверами.
Хотя Microsoft предоставляет диспетчер драйверов для компьютеров под управлением Microsoft Windows® 95 и более поздних версий, написала несколько драйверов ODBC и вызывает функции ODBC из некоторых своих приложений, любой может создавать приложения и драйверы ODBC. На самом деле подавляющее большинство приложений и драйверов ODBC, доступных сегодня, написано другими компаниями, а не Microsoft. Кроме того, драйверы и приложения ODBC существуют для Macintosh® и различных платформ UNIX.
Чтобы помочь разработчикам приложений и драйверов, корпорация Майкрософт предлагает пакет средств разработки программного обеспечения (SDK) ODBC для компьютеров под управлением Windows 95 и более поздних версий, который содержит диспетчер драйверов, установочную DLL-библиотеку, инструменты тестирования и примеры приложений. Microsoft объединилась с Visigenic Software, чтобы перенести эти SDK на Macintosh и различные платформы UNIX.
Важно понимать, что ODBC предназначен для раскрытия возможностей базы данных, а не для их дополнения. Таким образом, разработчики приложений не должны ожидать, что использование ODBC внезапно превратит простую базу данных в полнофункциональный механизм реляционной базы данных. Также не ожидается, что разработчики драйверов будут реализовывать функции, отсутствующие в базовой базе данных. Исключением является то, что разработчики, которые пишут драйверы, которые напрямую обращаются к файловым данным (таким как данные в файле Xbase), должны написать механизм базы данных, поддерживающий хотя бы минимальную функциональность SQL. Другим исключением является то, что компонент ODBC Windows SDK, ранее входивший в состав Microsoft Data Access Components (MDAC) SDK, предоставляет библиотеку курсоров, которая имитирует прокручиваемые курсоры для драйверов, реализующих определенный уровень функциональности.
Приложения, использующие ODBC, несут ответственность за любую функциональность кросс-базы данных. Например, ODBC не является ни механизмом гетерогенного соединения, ни обработчиком распределенных транзакций. Однако, поскольку он не зависит от СУБД, его можно использовать для создания таких инструментов для работы с несколькими базами данных.
Открытое подключение к базе данных (ODBC) — это открытый стандартный интерфейс прикладного программирования (API) для доступа к базе данных. В 1992 году Microsoft сотрудничает с Simba для создания первого в мире драйвера ODBC; SIMBA.DLL и доступ к данным на основе стандартов. Используя операторы ODBC в программе, вы можете получить доступ к файлам в ряде различных общих баз данных. В дополнение к программному обеспечению ODBC для доступа к каждой базе данных требуется отдельный модуль или драйвер.
Спецификация ODBC
Последняя версия спецификации ODBC доступна на веб-сайте Microsoft.
Для вашего удобства вы также можете загрузить PDF-версию текущей спецификации ODBC 3.8.
История ODBC
Microsoft представила стандарт ODBC в 1992 году. ODBC – это стандарт, предназначенный для унификации доступа к базам данных SQL. После успеха ODBC Microsoft представила OLE DB, которая должна была стать более широким стандартом доступа к данным. OLE DB был стандартом доступа к данным, который выходил за рамки только баз данных SQL и распространялся на любой источник данных, который мог предоставлять данные в табличном формате. План Microsoft состоял в том, что OLE DB заменит ODBC в качестве наиболее распространенного стандарта доступа к данным. Совсем недавно Microsoft представила стандарт доступа к данным ADO. Предполагалось, что ADO пойдет дальше, чем OLE DB, поскольку ADO был более объектно-ориентированным. Тем не менее, даже с очень значительными попытками Microsoft заменить стандарт ODBC тем, что считалось «лучшими» альтернативами, ODBC продолжал оставаться фактическим стандартом доступа к данным для источников данных SQL. Фактически, сегодня стандарт ODBC более распространен, чем OLE DB и ADO, потому что ODBC широко поддерживается (включая поддержку Oracle и IBM) и является межплатформенным стандартом доступа к данным. Сегодня наиболее распространенными стандартами доступа к данным для источников данных SQL по-прежнему являются ODBC и JDBC, и весьма вероятно, что такие стандарты, как OLE DB и ADO, со временем исчезнут.
Обзор ODBC
ODBC стал стандартом де-факто для основанного на стандартах доступа к данным как в реляционных, так и в нереляционных системах управления базами данных (СУБД). Simba тесно сотрудничала с Microsoft для совместной разработки стандарта ODBC еще в начале 90-х годов. Стандарт ODBC обеспечивает максимальную совместимость, что позволяет разработчикам приложений писать одно приложение для доступа к источникам данных от разных поставщиков. ODBC основан на спецификациях Call-Level Interface (CLI) от Open Group и ISO/IEC для API баз данных и использует язык структурированных запросов (SQL) в качестве языка доступа к базе данных.
Архитектура ODBC
Архитектура подключения к данным на основе ODBC выглядит следующим образом:
Приложение с поддержкой ODBC
Это любое приложение, совместимое с ODBC, например Microsoft Excel, Tableau, Crystal Reports, Microsoft Power BI или аналогичное приложение (электронная таблица, текстовый процессор, средство доступа к данным и извлечения и т. д.). Приложение с поддержкой ODBC выполняет обработку, передавая операторы SQL диспетчеру драйверов ODBC и получая от него результаты.
Диспетчер драйверов ODBC
Диспетчер драйверов ODBC загружает и выгружает драйверы ODBC от имени приложения. Платформа Windows поставляется с диспетчером драйверов по умолчанию, в то время как платформы, отличные от Windows, могут использовать диспетчер драйверов ODBC с открытым исходным кодом, такой как unixODBC и iODBC.Диспетчер драйверов ODBC обрабатывает вызовы функций ODBC или передает их драйверу ODBC и разрешает конфликты версий ODBC.
Драйвер ODBC
Источник данных
Источник данных — это просто источник данных. Это может быть файл, конкретная база данных в СУБД или даже поток данных в реальном времени. Данные могут находиться на том же компьютере, что и программа, или на другом компьютере в сети.
Подпишитесь на блог Magnitude
Получите самую свежую информацию, идеи и опыт для вашего предприятия, управляемого данными, прямо в ваш почтовый ящик.
Пакет odbc предоставляет DBI-совместимый интерфейс для драйверов Open Database Connectivity (ODBC). Это позволяет эффективно и легко настроить подключение к любой базе данных с помощью драйвера ODBC, включая SQL Server, Oracle, MySQL, PostgreSQL, SQLite и другие. Реализация основана на библиотеке C++ nanodbc.
Драйверы ODBC обычно можно загрузить у поставщика вашей базы данных или с сайта RStudio, если они используются с профессиональными продуктами RStudio. Пакет odbc работает с DBI
Использование
Все следующие примеры предполагают, что вы уже создали соединение с именем con . Чтобы узнать, как подключиться к базе данных определенного типа, посетите страницу Базы данных.
Информация о базе данных
Пакет odbc предоставляет инструменты для изучения объектов и столбцов в базе данных.
Вы также можете увидеть другие источники данных и драйверы в системе.
Чтение и запись таблиц
Пакет DBI имеет функции для чтения и записи таблиц. dbWriteTable() запишет фрейм данных R в таблицу SQL. dbReadTable() будет читать таблицу SQL во фрейм данных R.
Вы можете указать таблицы вне базы данных с помощью команды Id().
Запросы и заявления
Для интерактивных запросов используйте dbGetQuery(), чтобы отправить запрос и получить результаты. Чтобы получить результаты отдельно, используйте dbSendQuery() и dbFetch(). Аргумент n= в dbFetch() можно использовать для выборки частичных результатов.
Вы можете выполнять произвольные операторы SQL с помощью dbExecute() . Примечание. Многие API баз данных различают прямые и подготовленные операторы. Если вы хотите принудительно использовать прямую инструкцию (например, если вы хотите создать локальную временную таблицу в Microsoft SQL Server), передайте immdediate=TRUE .
Тесты производительности odbc
Пакет odbc часто работает намного быстрее, чем существующие пакеты RODBCDBI, совместимые с RODBC и DBI. Приведенные ниже тесты проводились на PostgreSQL и Microsoft SQL Server с использованием набора данных nycflights13::flights (336 776 строк, 19 столбцов).
Читайте также: