天天看点

matlab数据导入csv,matlab将csv数据导入MySQL

function DataToMySQL(dirpath1,dirpath2,column,tablename)

%函数功能:将数据导入Sql

%dirpath1->提取总文件数量的路径 如: 'E:\tableData\*.csv'

%dirpath2->合并文件名称的路径 如: 'E:\tableData\'

%column->对应数据列  如:closeprice在第4列,则输入"4"

%tablename->对应的数据库table  如:test.user

q=database('test','root','hao19890820','com.mysql.jdbc.Driver','jdbc:mysql://127.0.0.1:3306/test');

file=dir(dirpath1);

for n=1:length(file)

y=importdata([dirpath2,file(n).name]);

y.textdata(2:end,2:end)=num2cell(y.data);

sql1=['alter table ', tablename,' add gp', file(n).name(1:6),' varchar(8)'];

exec(q,sql1);

for i=2:length(y.textdata)

date1=char(y.textdata(i,1));

price=cell2mat(y.textdata(i,column));

sql2=['insert into ',tablename,'(date,gp',file(n).name(1:6),')  VALUES (''',date1,''',',num2str(price),') ON DUPLICATE KEY UPDATE gp',file(n).name(1:6), '=',num2str(price)];

exec(q,sql2);

end

clear y;

n   %用于显示正在运算的数据量

end