将matlab中的多列数据保存到mysql数据库

    因为需要将算法模型嵌入到网站中显示,在matlab中做仿真得到了一些数据,需要保存在我的后台数据库中,数据库用的是mysql,经过几番尝试,最终较为不麻烦的将数据导入到mysql中。


第一次尝试:如上图所示,我想保存的数据是两列不同的帧大小,但是行数不同。如果将两列数据直接复制到一个上,会产生行数少相差行数多的行补零的情况。这样导出的数据集还要把零处理掉,比较麻烦。

               

第二次尝试:处理0比较麻烦,所以需要一列一列的导出,尝试使用matlab自带的保存成 .txt  或 .xlsx 文件,因为 mysql 可以直接导入文本文件或者excel 文件。这种方式问题在于,导出的文件格式不适合 mysql 读取,改格式麻烦还不好使,并且尝试使用 mysql 读取 excel的文件都失败了,现在还不知道原因。 

  1. xlswrite(filename, M)  
  2. dlmwrite('pf1.txt', pframesize, ' ');  
  3. dlmwrite('bf1.txt', bframesize, ' '); 


最终方案:首先分别将两列数据分别复制到excel中的两列,注意使用 shift+鼠标左键选中所有数据,不要多选。

在最上方插入一行给两列数据写上标签,导入时候需要用。然后,需要将这个excel文件保存成 .csv 格式,而.xlsx 格式的文件读不出来。


接下来我使用的是navicat for mysql导入数据,设计好表根据导入向导一步步导入就可以了,这里贴几张图作为参考。






之后就可以成功导入了。这里是两列同时导入,如果是一列一列导入,就会出现第二列数据是从第一列数据导入的最后一个id之后再插入,不能同时从第一个id开始插入,这点需要注意。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章