Чтобы вставить данные в новую таблицу базы данных, можно использовать 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