天天看點

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