繁体   English   中英

如何使用MATLAB for循环迭代创建MySQL表?

[英]how do I use MATLAB for-loop iteration to create MySQL tables?

我的MATLAB字符串变量是

list ={'table1','table2'... }

我想用下面的代码在MYSQL中创建这些表,但失败了;

handle=list;
size_h = max(size(handle));
for i = size_h
    e = 'create table handle(i) (col int(11))';
    curs=exec(conn,e);
end

我知道麻烦是我在查询中使用过handle(i) ,因为删除了该handle(i)并使用了简单的表名就可以正常工作了。

我将如何使用'i'来创建特定的表格?

问题是您没有将实际的表名传递给连接字符串,而是从字面上传递了handle(i) 一种替代方法是手动构建字符串或使用sprintf函数。 另外, handle是一个单元格,要访问其内容,应使用{}而不是() 我还从改变了计数器i其代表在MATLAB中内置的虚数单位ii

handle=list;
size_h = max(size(handle));
for ii = 1:size_h
    e = sprintf('create table %s (col int(11))',handle{ii});
    curs=exec(conn,e);
end

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM