Импортируйте данные от таблицы базы данных Используя функцию sqlread

Этот пример показывает, как импортировать данные из таблицы в базе данных Microsoft® Access™ в рабочую область MATLAB® с помощью функции sqlread. Пример затем показывает, как использовать скрипт SQL, чтобы импортировать данные от SQL-запроса, который содержит несколько соединений.

Соединитесь с базой данных

Создайте связь Базы данных Microsoft Access с именем источника данных dbdemo с помощью драйвера ODBC и пустого имени пользователя и пароля. Эта база данных содержит таблицу producttable.

conn = database('dbdemo','','');

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

Проверяйте соединение с базой данных. Если свойство Message пусто, то связь успешна.

conn.Message
ans =

     []

Импортируйте данные от таблицы базы данных

Импортируйте данные о продукте от таблицы базы данных producttable при помощи функции sqlread и соединения с базой данных. Эта функция импортирует данные как таблицу MATLAB.

tablename = 'producttable';
data = sqlread(conn,tablename);

Отобразите номер продуктов и описание в импортированных данных.

data(:,[1 5])
ans =

  10×2 table

    productnumber    productdescription
    _____________    __________________

          9          'Victorian Doll'  
          8          'Train Set'       
          7          'Engine Kit'      
          2          'Painting Set'    
          4          'Space Cruiser'   
          1          'Building Blocks' 
          5          'Tin Soldier'     
          6          'Sail Boat'       
          3          'Slinky'          
         10          'Teddy Bear'      

Импортируйте данные Используя несколько, участвует в SQL-запросе

Создайте файл с именем скрипта SQL salesvolume.sql со следующим SQL-запросом. Этот SQL-запрос использует, несколько соединяют, чтобы присоединиться к этим таблицам в базе данных dbdemo:

  • producttable

  • salesvolume

  • suppliers

Цель запроса состоит в том, чтобы импортировать данные об объеме продаж для поставщиков, расположенных в Соединенных Штатах.

SELECT  salesvolume.january
,   salesvolume.february
,   salesvolume.march
,   salesvolume.april
,   salesvolume.may
,   salesvolume.june
,   salesvolume.july
,   salesvolume.august
,   salesvolume.september
,   salesvolume.october
,   salesvolume.november
,   salesvolume.december
,   suppliers.country
FROM     ((producttable
INNER JOIN salesvolume
ON  producttable.stocknumber = salesvolume.stocknumber)
INNER JOIN suppliers
ON  producttable.suppliernumber = suppliers.suppliernumber)
WHERE suppliers.country LIKE 'United States%'

Запустите файл salesvolume.sql при помощи функции executeSQLScript. results является массивом структур с данными, возвращенными в выполнение SQL-запроса в файле скрипта SQL.

results = executeSQLScript(conn,'salesvolume.sql');

Отобразите первые три строки в таблице Data. Доступ к этой таблице как поле массива структур при помощи записи через точку.

head(results(1).Data,3)
ans =

  3×13 table

    january    february    march    april    may     june    july    august    september    october    november    december        country    
    _______    ________    _____    _____    ____    ____    ____    ______    _________    _______    ________    ________    _______________

     5000        3500      2800     2300     1700    1400    1000     900        1600        3300       12000       20000      'United States'
     2400        1721      1414     1191      983     825     731     653         723         790        1400        5000      'United States'
     1200         900       800      500      399     345     300     175         760        1500        5500       17000      'United States'

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

close(conn)

Смотрите также

| | |

Похожие темы