exponenta event banner

Импорт данных из таблицы базы данных с помощью 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)

См. также

| | |

Связанные темы