I am stuck with inserting data into my MS Access Database. I already converted the data into cell array but it still returns me the error indicating that I am inputting the wrong data type.

조회 수: 1 (최근 30일)
C =
'SGX 8873 K'
>> iscell(C)
ans =
1
>> datainsert(conn,'VehicleLocation','col2','C')
Error using database/datainsert (line 58)
Input data must be a cell array or numeric matrix.
Been stuck on inserting the data into the database for quite some time now. The input data 'C' is already verified as cell array by the command iscell(C). Anybody got any idea what am I doing wrongly? Thanks.
  댓글 수: 3
Walter Roberson
Walter Roberson 2015년 5월 20일
Umakant, examine the below:
>> 'ABC'
ans =
ABC
>> {'ABC'}
ans =
'ABC'
When you see a string with quotes around it and indented, that is indicating a cell array containing the string; if it were a plain string then it would be displayed without the quote marks or indentation.
Tan Jun Hao
Tan Jun Hao 2015년 5월 20일
Umakant, I am currently using r2015a.
I have attached a photo of the variable editor, which shows that C is a 1x1 cell.

댓글을 달려면 로그인하십시오.

답변 (3개)

the cyclist
the cyclist 2015년 5월 20일
편집: the cyclist 2015년 5월 20일
Guessing you want to remove the quotes from around C in the datainsert statement. You are trying to insert the single character 'C', rather than your variable C.
  댓글 수: 1
Tan Jun Hao
Tan Jun Hao 2015년 5월 20일
편집: Walter Roberson 2015년 5월 20일
C =
'SGX 8873 K'
>> iscell(C)
ans =
1
>> datainsert(conn,'VehicleLocation','col2',C)
Cell contents reference from a non-cell array object.
Error in database/datainsert (line 72)
insertField = [ insertField fieldNames{i}]; %#ok
Thanks for the prompt reply. However, MATLAB still indicates that I am not inputting a cell array data. Any idea how to solve this problem?

댓글을 달려면 로그인하십시오.


Walter Roberson
Walter Roberson 2015년 5월 20일
datainsert(conn,'VehicleLocation', {'col2'}, C)
The column names must be cell array of string.
  댓글 수: 2
Tan Jun Hao
Tan Jun Hao 2015년 5월 20일
datainsert(conn,'VehicleLocation',{'col2'},C)
Error using database/datainsert (line 106) [Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.
Tried doing it before but couldn't work.
Walter Roberson
Walter Roberson 2015년 5월 20일
Sorry, I do not have that toolbox, so I cannot check the code to see what is happening.

댓글을 달려면 로그인하십시오.


Thomas Koelen
Thomas Koelen 2015년 5월 20일
Are you sure you already created a database?
  댓글 수: 5
Walter Roberson
Walter Roberson 2015년 5월 20일
You do not have a column named 'col2', you have a column named 'LicensePlate'
Tan Jun Hao
Tan Jun Hao 2015년 5월 21일
Alright thanks! That solved my problem. But now I am currently stuck at inserting multiple columns of data in one instance. Any ideas?

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Database Toolbox에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by