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

Этот пример показывает, как импортировать данные от базы данных в 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 

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

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)

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

| | |

Похожие темы