Управление памятью импорта данных

Чтобы импортировать данные с простыми запросами, можно использовать приложение Database Explorer. Для более сложных запросов и проблем памяти управления, используйте командную строку, чтобы импортировать данные в рабочую область MATLAB®. Чтобы изучить различия между этими двумя подходами, смотрите, что Импорт Данных Использует Приложение Database Explorer или Командную строку.

Database Toolbox™ обеспечивает различные способы импортировать данные в рабочее пространство MATLAB от базы данных.

sqlread Функция

Если вы не знакомы с записью SQL-запросов, можно импортировать данные с помощью sqlread функция. Для этой функции нужны только соединение с базой данных и имя таблицы базы данных, чтобы импортировать данные. Кроме того, sqlread функция не требует, чтобы вы установили настройки базы данных.

select Функция

Для сбережений памяти можно импортировать и данные о доступе с помощью select функция. С этой функцией вы сохраняете память путем импортирования данных с помощью типов данных, заданных в базе данных. Табличные определения в базе данных задают тип данных для каждого столбца. select функционируйте сопоставляет тип данных в базе данных к соответствующему типу данных MATLAB для каждой переменной во время импорта данных. Вместо того, чтобы импортировать каждое числовое значение как double в MATLAB, select функция позволяет импорт различных целочисленных типов данных. Вы больше не должны преобразовывать тип данных числового значения к определенному числовому типу после импорта данных. Емкость памяти MATLAB, используемая типами данных целочисленного или беззнакового целого, меньше двойной точности. Поэтому select функция сохраняет память.

Эта таблица показывает типы числовых данных в базе данных и их эквивалентах MATLAB при использовании select функция.

Тип данных базы данныхТип данных MATLAB

SIGNED TINYINT

int8

UNSIGNED TINYINT

uint8

SIGNED SMALLINT

int16

UNSIGNED SMALLINT

uint16

SIGNED INT

int32

UNSIGNED INT

uint32

SIGNED BIGINT

int64

UNSIGNED BIGINT

uint64

REAL

single

FLOAT

single

DOUBLE

double

DECIMAL

double

NUMERIC

double

Булевская переменная

logical

Дата, время или текст

char

Например, создайте таблицу Patients с этим определением таблицы базы данных:

CREATE TABLE Patients(
    LastName VARCHAR(50),
    Gender VARCHAR(10),
    Age TINYINT,
    Location VARCHAR(300),
    Height SMALLINT,
    Weight SMALLINT,
    Smoker BIT,
    Systolic FLOAT,
    Diastolic NUMERIC,
    SelfAssessedHealthStatus VARCHAR(20))

Эти столбцы таблицы имеют типы числовых данных в базе данных:

  • Age

  • Height

  • Weight

  • Systolic

  • Diastolic

fetch функционируйте импортирует столбцы числовых данных с двойной точностью по умолчанию. Однако select функционируйте импортирует столбцы в их соответствие с целочисленным типом данных. Когда вы импортируете использование select функция, соответствующие типы данных MATLAB для этих столбцов:

  • uint8

  • uint16

  • uint16

  • single

  • double

fetch функционируйте импортирует Smoker столбец как double в MATLAB. Однако select функционируйте импортирует Smoker столбец как logical переменная.

Чтобы видеть типы данных после импорта данных, используйте select функция с metadata выходной аргумент.

Задайте стратегию импорта Используя SQLImportOptions Объект

Можно настроить настройки импорта для того, чтобы импортировать данные от базы данных в рабочее пространство MATLAB при помощи SQLImportOptions объект с fetch функция. select функция задает тип данных MATLAB по умолчанию. Однако с SQLImportOptions объект, можно задать стратегию импорта определенных столбцов базы данных и задать тип данных MATLAB для соответствующих импортированных данных.

Кроме того, можно задать categoricaldatetime, и целочисленные типы данных для импортированных данных с помощью SQLImportOptions объект. Емкость памяти MATLAB, используемая, чтобы сохранить эти типы данных, меньше емкости памяти, используемой в альтернативных типах данных, таких как string или double.

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

| | |

Похожие темы