你好! 下面是执行以下任务的代码:
(!) 困难是,只有矩阵的第一行被写入Microsoft Access(三个可用行中),然后显示错误消息:
使用数据库/插入错误(第213行)常规错误
test_matlab(第22行)中的错误insert(conn,'Rtu',colnames,Q);
(?),请告诉我,为了在Microsoft Access中记录矩阵的所有三行,有必要添加/更正代码吗?
Q=[];
A={1, [3 5 8]} % array of cells
for j=1:2 % matrix column index
for i=1:3 % matrix row index
if j==1
Q(i,j)=A{1,j};
else
Q(i,j)=A{1,j}(1,i);
end
end
end
Q
conn = database('QWERT', '', '');
colnames = {'u1', 'u2'};
insert(conn, 'Rtu', colnames, Q);
close(conn);
答案 0 :(得分:0)
我不使用matlab,但是正常的编程实践会建议将插入内容放入您的外部for循环中: 这行得通吗?
Q=[];
A={1, [3 5 8]} % array of cells
conn = database('QWERT', '', '');
colnames = {'u1', 'u2'};
for j=1:2 % matrix column index
for i=1:3 % matrix row index
if j==1
Q(i,j)=A{1,j};
else
Q(i,j)=A{1,j}(1,i);
end
end
insert(conn, 'Rtu', colnames, Q);
end
Q
close(conn);
或在插入处放置另一个for循环...