exponenta event banner

Вставка данных в таблицу базы данных

В этом примере показано, как импортировать данные из базы данных в MATLAB ®, выполнить вычисления данных и экспортировать результаты в таблицу базы данных.

В примере предполагается, что выполняется подключение к базе данных Microsoft ® Access™, содержащей таблицы с именемsalesvolume и yearlysales. Кроме того, в примере предполагается, что MATLAB запускается как администратор. salesvolume содержит имена столбцов для каждого месяца. yearlysales таблица содержит имена столбцов month и salestotal.

Подключиться к базе данных

Создайте подключение к базе данных Microsoft Access. Например, этот код предполагает подключение к источнику данных с именем dbdemo с пустым именем пользователя и паролем.

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

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

conn.Message
ans =

     []

Расчет суммы оборота за один месяц

Импорт данных оборота за март с помощью подключения к базе данных. salesvolume таблица базы данных содержит данные оборота.

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

Просмотрите первые три строки данных оборота. Четвертая переменная содержит данные за март месяц.

head(data(:,4),3)
ans =

  3×1 table

    march
    _____

     981 
    1414 
     890 

Вычислите сумму мартовских продаж. Назначение результата переменной рабочей области MATLAB total и просмотрите результат.

total = sum(data.march)
total =

       14606

Вставка данных об общем объеме продаж за один месяц в базу данных

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

month = data.Properties.VariableNames(4);

Определите имена столбцов для вставляемых данных в виде массива ячеек символьных векторов.

colnames = {'month' 'salestotal'};

Создайте таблицу MATLAB, в которой хранятся экспортируемые данные.

results = table(month,total,'VariableNames',colnames);

Определение статуса AutoCommit флаг базы данных. Этот статус определяет возможность отмены действия вставки.

conn.AutoCommit
ans =

    'on'

AutoCommit флаг установлен в значение on. База данных автоматически фиксирует экспортированные данные в базе данных, и это действие невозможно отменить.

Вставьте сумму продаж за март месяц в yearlysales таблица.

tablename = 'yearlysales';
sqlwrite(conn,tablename,results)

Импорт данных из yearlysales таблица. Эти данные содержат рассчитанный результат.

data = sqlread(conn,tablename)
data =

  1×3 table

     month     salestotal    revenue
    _______    __________    _______

    'march'      14606          0   

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

close(conn)

См. также

| | |

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