exponenta event banner

Вставка данных в новую таблицу базы данных с помощью функции вставки

Для вставки данных в новую таблицу базы данных можно использовать sqlwrite функция. datainsert и fastinsert функции будут удалены в следующей версии. При использовании sqlwrite функция, вам больше не нужно предварительно обрабатывать или преобразовывать данные, как требуется datainsert функция. Следующие краткие примеры показывают, как вставить одни и те же данные с помощью обоих sqlwrite и datainsert функции. Используйте эти примеры для миграции в sqlwrite функция для вставки данных.

Вставка данных в новую таблицу базы данных с помощью sqlwrite функция.

% Read from patient.xls file
patient_data = readtable('patient.xls');

% Insert using sqlwrite function
sqlwrite(conn,'patient',patient_data);

Вставьте те же данные с помощью datainsert функция.

% Create a database table equivalent to data stored in patients.xls file
sqlquery = ['CREATE TABLE patients(LastName varchar, Gender varchar, ' ...
    'Age numeric, Location varchar, Height numeric, Weight numeric, ' ... 
    'Smoker Boolean, Systolic numeric, Diastolic numeric, ' ...
    'SelfAssessedHealthStatus varchar)'];
execute(conn,sqlquery)

% Read from patients.csv file
patient_data = readtable('patients.csv');
variablenames = patient_data.Properties.VariableNames;
patient_data = table2cell(patient_data);

% Convert to compatible data
columns = size(patient_data,2);
for i = 1:columns
    a = patient_data(:,i);
    if all(cellfun(@(x)isnumeric(x),a)) == true
        a(cellfun(@isnan,a)) = {Inf};
        patient_data(:,i) = a;
    end
end

patient_data = cell2table(patient_data,'VariableNames',variablenames);

% Insert using datainsert function
datainsert(conn,'patient',variablenames,patient_data)

При использовании datainsert для предварительной обработки вставляемых данных необходимо выполнить дополнительные шаги. Используйте sqlwrite вместо этого, чтобы избежать этих дополнительных шагов.

См. также

| | | |

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