Чтобы вставить данные в новую таблицу базы данных, можно использовать функцию 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
вместо этого, чтобы избежать этих дополнительных шагов.
cell2table
| exec
| readtable
| sqlwrite
| table2cell