connection

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

Описание

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

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

Создание

Создайте connection объект с помощью database функция.

Свойства

развернуть все

ODBC и свойства связи JDBC

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

Имя источника данных для имени подключения ODBC или имя базы данных для связи JDBC в виде вектора символов. Для драйвера ODBC, DataSource имя, вы предусматриваете свой источник данных, когда вы создаете источник данных с помощью Microsoft® ODBC Administrator. Для драйвера JDBC, DataSource имя вашей базы данных. Имя отличается для различных систем баз данных. Например, DataSource SID или сервисное имя, когда вы соединяетесь с базой данных Oracle®. Или, DataSource имя каталога, когда вы соединяетесь с базой данных MySQL®. Для получения дополнительной информации о вашем имени базы данных, свяжитесь со своим администратором базы данных или обратитесь к вашей документации базы данных.

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

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

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

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

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

Пример: 'username'

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

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

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

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

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

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

Тип соединения с базой данных в виде одного из этих значений:

  • 'JDBC Connection Object' — Соединение с базой данных создается с помощью драйвера JDBC.

  • 'ODBC Connection Object' — Соединение с базой данных создается с помощью драйвера ODBC.

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

Свойства связи JDBC

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

Драйвер JDBC в виде вектора символов при соединении с базой данных с помощью драйвера JDBC URL. Это свойство зависит от URL свойство.

Пример: 'com.mysql.jdbc.jdbc2.opti ...'

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

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

Соединение с базой данных URL в виде вектора символов для специфичной для поставщика строки. Это свойство зависит от Driver свойство.

Пример: 'jdbc:mysql://sname:1234/ ...'

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

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

Автоматически фиксируйте транзакции в виде одного из этих значений:

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

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

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

Данные о базе данных только для чтения в виде одного из этих значений:

  • '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 или драйвера JDBC в виде вектора символов.

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

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

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

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

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

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

Пример: '11.00.5058'

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

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

развернуть все

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

Примеры

свернуть все

Во-первых, создайте связь ODBC с базой данных MySQL. Затем импортируйте данные от базы данных в MATLAB® и выполните простой анализ данных. Закройте соединение с базой данных. Код принимает, что вы соединяетесь с версией 5.5.46 базы данных MySQL с помощью Драйвера 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)

Создайте связь JDBC с базой данных Oracle. Чтобы создать эту связь, необходимо сконфигурировать источник данных JDBC. Для получения дополнительной информации смотрите configureJDBCDataSource функция. Затем импортируйте данные от базы данных в MATLAB, выполните простой анализ данных и закройте соединение с базой данных.

Этот пример принимает, что вы соединяетесь с Базой данных Oracle 12c Enterprise Edition Релиз 12.1.0.2.0 с помощью Драйвера JDBC Oracle 12.1.0.1.0.

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

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

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

  connection with properties:

                  DataSource: 'dsname'
                    UserName: 'username'
                      Driver: 'oracle.jdbc.pool.OracleDa ...'
                         URL: 'jdbc:oracle:thin:@(DESCRI ...'
                     Message: ''
                        Type: 'JDBC Connection Object'
  Database Properties:

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

  Catalog and Schema Information:

              DefaultCatalog: ''
                    Catalogs: {}
                     Schemas: {'schema1', 'schema2', 'schema3' ... and 39 more}

  Database and Driver Information:

         DatabaseProductName: 'Oracle'
      DatabaseProductVersion: 'Oracle Database 12c Enter ...'
                  DriverName: 'Oracle JDBC driver'
               DriverVersion: '12.1.0.1.0'

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

Закройте соединение с базой данных.

close(conn)

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

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

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