STRCMP(expr1,expr2)
Функция STRCMP() возвращает: 0, если строки идентичны, -1 - если первый аргумент меньше второго (в соответствии с имеющимся порядком сортировки), и 1 - в остальных случаях:
mysql> SELECT STRCMP('text', 'text2'); -> -1 mysql> SELECT STRCMP('text2', 'text'); -> 1 mysql> SELECT STRCMP('text', 'text'); -> 0
Тема 3.10 MySQL. Оптимизация данных в MySQL.Безопасность в MySQL.
Тема 4.1 Стандартные системы доступа к базам данных. Тема 4.2 Клиенты удаленного доступа и построение запросов к СУБД
Функциональная модель ODBC
Основа ODBC
Интерфейс ODBC (Open Database Connectivity) был разработан фирмой Microsoft как открытый интерфейс доступа к базам данных. Он предоставляет унифицированные средства взаимодействия прикладной программы, называемой клиентом (или приложением-клиентом), с сервером - базой данных.
В основу интерфейса ODBC были положены спецификация CLI-интерфейса (Call-Level Interface), разработанная X/Open, и ISO/IEC для API баз данных, а также язык SQL (Structured Query Language) как стандарт языка доступа к базам данных.
Интерфейс ODBC проектировался для поддержки максимальной интероперабельности приложений, которая обеспечивает унифицированный доступ любого приложения, использующего ODBC, к различным источникам данных. Так, если приложение, соответствующее стандарту ODBC и SQL, первоначально разрабатывалось для работы с базой данных Microsoft Access, а затем таблицы этой базы были перенесены в базу данных Microsoft SQL Server или базу данных Oracle, то приложение сможет и дальше обрабатывать эти данные без внесения дополнительных изменений.
Для взаимодействия с базой данных приложение-клиент вызывает функции интерфейса ODBC, которые реализованы в специальных модулях, называемых ODBC-драйверами. Как правило, ODBC-драйверы - это DLL-библиотеки, при этом одна DLL-библиотека может поддерживать несколько ODBC-драйверов. При установке на компьютер любого SQL-сервера (базы данных, поддерживающей один из стандартов языка SQL, например, SQL-92) автоматически выполняется регистрация в реестре Windows и соответствующего ODBC-драйвера.
Архитектура ODBC
Архитектура ODBC представлена четырьмя компонентами (рис. 1.1):
- Приложение-клиент, выполняющее вызов функций ODBC.
- Менеджер драйверов, загружающий и освобождающий ODBC-драйверы, которые требуются для приложений-клиентов. Менеджер драйверов обрабатывает вызовы ODBC-функций или передает их драйверу.
- ODBC-драйвер, обрабатывающий вызовы SQL-функций, передавая SQL-серверу выполняемый SQL-оператор, а приложению-клиенту - результат выполнения вызванной функции.
- Источник данных, определяемый как конкретная локальная или удаленная база данных.
Рис. 1.1. Архитектура ODBC
Основное назначение менеджера драйверов - загрузка драйвера, соответствующего подключаемому источнику данных, и инкапсуляция взаимодействия с различными типами источников данных посредством применения различных ODBC-драйверов.
ODBC-драйверы, принимая вызовы функций, взаимодействуют с приложением-клиентом, выполняя следующие задачи:
- управление коммуникационными протоколами между приложением-клиентом и источником данных;
- управление запросами к СУБД;
- выполнение передачи данных от приложения-клиента в СУБД и из базы данных в приложение-клиент;
- возвращение приложению-клиенту стандартной информации о выполненном вызове ODBC-функции в виде кода возврата;
- поддерживает работу с курсорами и управляет транзакциями.
Приложение-клиент одновременно может устанавливать соединения с несколькими различными источниками данных, используя разные ODBC-драйверы, а также несколько соединений с одним и тем же источником данных, используя один и тот же ODBC-драйвер.
Функции ODBC API
Все функции ODBC API условно можно разделить на четыре группы:
- основные функции ODBC, обеспечивающие взаимодействие с источником данных;
- функции установки (setup DLL);
- функции инсталляции (installer DLL) ODBC и источников данных;
- функции преобразования данных (translation DLL).
Объявления всех функций и используемых ими типов данных содержатся в заголовочных файлах. Группа основных функций ODBC API разбита на три уровня:
- функции ядра ODBC;
- функции 1 уровня;
- функции 2 уровня.
Каждый ODBC-драйвер специфицируется как драйвер, поддерживающий определенный уровень функций ODBC API.
Прототипы функций ядра ODBC API находятся в файле Sql.h (C/C++, Visual Studio), а прототипы функций 1 и 2 уровней - в файле Sqlext.h.
Применение #define ODBCVER позволяет указать используемую версию (например, #define ODBCVER 0x0351).
Прототипы функций установки и инсталляции находятся в файле odbcinst.h.
Дата добавления: 2020-11-18; просмотров: 418;