connection

Соединение ODBC реляционной базы данных

Описание

Создайте подключение к базе данных с помощью драйвера ODBC. Для получения дополнительной информации о драйверах ODBC и альтернативных драйверах JDBC, смотрите Выбор между драйверами ODBC и JDBC.

Можно использовать connection объект для подключения к различным базам данных с помощью различных драйверов, которые вы устанавливаете и администрируете. Для получения дополнительной информации см. раздел «Подключение к базе данных».

Создание

Создайте connection использование объекта odbc или database функция.

Свойства

расширить все

Свойства соединения

Это свойство доступно только для чтения.

Имя источника данных для соединения ODBC, заданное как вектор символов. DataSource - это имя, которое вы предоставляете для вашего источника данных при создании источника данных с помощью Microsoft.® Администратор ODBC.

Имя источника данных является пустым символьным вектором, если подключение недопустимо.

Пример: 'MS SQL Server'

Типы данных: char

Это свойство доступно только для чтения.

Имя пользователя, требуемое для доступа к базе данных, задается как вектор символов. Если имя пользователя не требуется, задайте пустое значение ''.

Пример: 'username'

Типы данных: char

Это свойство доступно только для чтения.

Сообщение о состоянии соединения с базой данных, заданное как вектор символов. При успешном подключении к базе данных сообщение о состоянии пустое. В противном случае это свойство содержит сообщение об ошибке.

Пример: 'ODBC Driver Error: [Micro ...'

Типы данных: char

Это свойство доступно только для чтения.

Тип подключения к базе данных, заданный как значение 'ODBC Connection Object' это означает соединение с базой данных, созданное с использованием драйвера ODBC.

Типы данных: char

Свойства базы данных

Флаг для автоматического управления транзакциями, заданный как одно из следующих значений:

  • 'on' - Транзакции базы данных автоматически фиксируются в базе данных.

  • 'off' - Транзакции базы данных должны быть зафиксированы в базе данных вручную.

Пример: 'AutoCommit','off'

Данные базы данных только для чтения, заданные в качестве одного из следующих значений:

  • 'on' - Данные базы данных доступны только для чтения.

  • 'off' - Данные базы данных доступны для записи.

Типы данных: char

Это свойство доступно только для чтения.

Тайм-аут входа в систему, заданный как положительный числовой скаляр. Тайм-аут входа задает количество секунд, в течение которых драйвер ожидает подключения к базе данных перед выдачей ошибки.

Когда тайм-аут для попытки подключения не задан, значение 0.

Когда тайм-аут входа не поддерживается базой данных, значение -1.

Типы данных: double

Это свойство доступно только для чтения.

Максимальное количество подключений к базе данных в виде положительного числового скаляра.

Значение 0 если верхний предел максимального количества подключений к базе данных отсутствует.

Когда максимальное количество подключений к базе данных не поддерживается базой данных, значение -1.

Типы данных: double

Информация о каталоге и схеме

Это свойство доступно только для чтения.

Имя каталога по умолчанию, заданное как вектор символов.

Когда база данных не задает каталог по умолчанию, значение представляет собой пустой символьный вектор ''.

Пример: 'catalog'

Типы данных: char

Это свойство доступно только для чтения.

Имена каталогов, заданные как массив ячеек из векторов символов.

Когда база данных не содержит каталогов, значение представляет собой пустой массив ячеек {}.

Пример: {'catalog1', 'catalog2'}

Типы данных: cell

Это свойство доступно только для чтения.

Имена схем, заданные как массив ячеек из векторов символов.

Когда база данных не содержит схем, значение представляет собой пустой массив ячеек {}.

Пример: {'schema1', 'schema2', 'schema3'}

Типы данных: cell

Информация о базе данных и драйвере

Это свойство доступно только для чтения.

Имя продукта базы данных, заданное как вектор символов.

Когда подключение к базе данных недопустимо, значение представляет собой пустой символьный вектор ''.

Пример: 'Microsoft SQL Server'

Типы данных: char

Это свойство доступно только для чтения.

Версия продукта базы данных, заданная как вектор символов.

Когда подключение к базе данных недопустимо, значение представляет собой пустой символьный вектор ''.

Пример: '11.00.2100'

Типы данных: char

Это свойство доступно только для чтения.

Имя драйвера ODBC, заданное как вектор символов.

Когда подключение к базе данных недопустимо, значение представляет собой пустой символьный вектор ''.

Пример: 'sqlncli11.dll'

Типы данных: char

Это свойство доступно только для чтения.

Версия драйвера ODBC, заданная как вектор символов.

Когда подключение к базе данных недопустимо, значение представляет собой пустой символьный вектор ''.

Пример: '11.00.5058'

Типы данных: char

Функции объекта

closeЗакрытие и признание недействительными базы данных и ресурсов драйвера
commitСделайте изменения базы данных постоянными
executeВыполните оператора SQL с помощью реляционного подключения к базе данных
fetchИмпорт данных в Рабочее пространство MATLAB после выполнения SQL оператора
isopenОпределите, открыто ли подключение к базе данных
rollbackОтменить изменения базы данных
executeSQLScriptВыполните SQL скрипт в базе данных
selectВыполнение SQL- SELECT оператор и импорт данных в MATLAB
sqlfindПоиск информации обо всех типах таблиц в базе данных
sqlinnerjoinВнутреннее соединение между двумя таблицами базы данных
sqlouterjoinВнешнее соединение между двумя таблицами базы данных
sqlreadИмпортируйте данные в MATLAB из таблицы базы данных
sqlwriteВставьте данные MATLAB в таблицу базы данных
updateЗамените данные в таблице базы данных данными MATLAB

Примеры

свернуть все

Сначала создайте ODBC-соединение с MySQL® база данных. Затем импортируйте данные из базы данных в MATLAB® и выполнить простой анализ данных. Закройте подключение к базе данных. Код предполагает, что вы подключаетесь к базе данных MySQL версии 5.5.46 с помощью драйвера ANSI MySQL ODBC 5.3.

Подключитесь к базе данных с помощью имени источника данных, имени пользователя и пароля.

datasource = 'dsname';
username = 'username';
password = 'pwd';

conn = database(datasource,username,password)
conn = 

  connection with properties:

                  DataSource: 'MySQLdb'
                    UserName: 'username'
                     Message: ''
                        Type: 'ODBC Connection Object'
  Database Properties:

                  AutoCommit: 'on'
                    ReadOnly: 'off'
                LoginTimeout: 0
      MaxDatabaseConnections: 0

  Catalog and Schema Information:

              DefaultCatalog: 'catalog'
                    Catalogs: {'catalog1', 'catalog2'}
                     Schemas: {}

  Database and Driver Information:

         DatabaseProductName: 'MySQL'
      DatabaseProductVersion: '5.5.46-0+deb7u1'
                  DriverName: 'myodbc5a.dll'
               DriverVersion: '05.03.0004'

conn имеет пустой Message свойство, которое указывает на успешное подключение.

Разделы свойств connection являются:

  • Database Properties - Информация о строении базы данных

  • Catalog and Schema Information - Имена каталогов и схем в базе данных

  • Database and Driver Information - Имена и версии базы данных и драйвера

Импортируйте все данные из таблицы inventoryTable в MATLAB с помощью select функция. Отобразите данные.

selectquery = 'SELECT * FROM inventoryTable';
data = select(conn,selectquery)
ans = 

    productnumber    quantity    price         inventorydate     
    _____________    ________    _____    _______________________

     1               1700        14.5     '2014-09-23 09:38:34.0'
     2               1200         9.3     '2014-07-08 22:50:45.0'
     3                356        17.2     '2014-05-14 07:14:28.0'
     ...

Определите наивысшее количество продукта из таблицы.

max(data.Quantity)
ans =

        9000

Закройте подключение к базе данных conn.

close(conn)

Альтернативная функциональность

Вы можете подключиться к файлу базы данных SQLite, создав sqlite объект. Это подключение использует интерфейс MATLAB к SQLite, который не требует установки или администрирования базы данных или драйвера. Для получения дополнительной информации смотрите Работа с интерфейсом MATLAB к SQLite.

Представлено до R2006a