Я пытаюсь вставить 16 бит данных, хранящихся в виде логического массива в Matlab, в столбец MySQL типа bit(16)
, используя JDBC Connector и стандартную функцию sqlwrite()
из Matlab Database Toolbox.
logical_array = '1010010110100101' == '1'; % Create a logical array of length 16 (1x16 logical)
logical_array_cell = {logical_array}; % Put the logical array in a cell (1x1 cell)
T = cell2table(logical_array_cell,'VariableNames',{'column_name'}); % Convert to table
sqlwrite(database_connection, 'table_name', T);
Соединение с базой данных уже работает нормально.Ошибка выглядит следующим образом:
Ошибка при использовании database.jdbc.connection / sqlwrite (строка 172) JDBC JDBC / ODBC Ошибка: невозможно преобразовать класс [Z в тип SQL, запрошенный из-за java.lang.ClassCastException- [Z не может быть приведен к java.lang.Number.172 ошибка (сообщение («база данных: база данных: WriteTableDriverError», «JDBC», строка (insertStmt.getErrorExecutingStatement)))
Я использую Matlab версии 2018a.