当进行实验时,一般要把实验数据记录到纸质实验报告上,如何改进这种形式,可否实行象无纸化办公形式的无纸化实验呢,关键问题应该是大量的实验数据的存放问题,现如今硬盘容量不是问题。要找到一种存取方便、自如的方法,数据库技术应该是首选。MATLAB具有强大的科学计算功能,可方便、快捷地处理实验数据[1,2],并可将数据可视化[3],将二者有机地结合起来可以很好地解决上述问题。本文研究基于MATLAB和数据库技术的实验数据的录入、检验及存取方法,图1是系统结构图。图1系统结构图1实验数据的录入进行实验时往往需要记录的数据不止一、两个,而是一组,采用MATLAB记录时当然可以利用其图形用户界面的编辑文本框功能,但数据参数量大时采用此种方式编程较麻烦。可使用MATLAB的uitable建立二维的数据录入表格,形式为:uitable(numrows,numcolumus),其中numrows,numcolumus分别为窗体的行数和列数。或uitable(data,columnNames),用于建立指定行名与数据的uitable对象。其中data为数据内容,可以是数组或向量;columnNames用来显示每一行的标头。2实验数据的数据库存取2.1MATLAB与数据库的连接与数据库名为Sample的ODBC数据源连接时,如用户名为uname,密码为upasswd,数据库连接程序为:connA=database('Sample','uname'',upass-wd');对于MicrosoftSQLServer2000,还需要通过URL连接数据库名、用户名以及密码,如:connA=database('Sample','uname'',upass-wd','com.microsoft.jdbc.sqlserver.SQLServer-Driver','jdbc:microsoft:sqlserver://127.0.0.1:1403;database=Sample;user=uname;password=upasswd');不同的数据库如Informix、Oracle等连接方式稍有不同,可参照Matlab数据库工具箱说明修改即可。MATLAB连接到数据库后,才可以进行二者间的数据通信。2.2MATLAB数据存入数据库数据库处于连接状态下,采用SQL语句将数据exdata加入到表名为putdatatabnam中,其字段为colnames,采用语句为:insert(connA,'putdatatabnam',colnames,exdata);如修改库中的语句,则采用:update(connA,'putdatatabnam',colnames,newdata,whereclause);其中newdata为新数据,whereclause为条件语句,即满足whereclause时的数据才被更换。2.3数据库数据取出到MATLAB进行处理连接到数据库后,采用SQL语句从数据库表中选择需要的数据:cursMD=exec(connA,'selectcolnamfromtabnam');cursMD=fetch(cursMD,10);MyData=cursMD.Data其中tabnam为数据库中的表名,而colnam为表中的字段名。MyData即为从数据库中取出的数据。对数据库操作完毕后,需采用close(cursMD)及close(connA)语句关闭指针及与数据库的连接。3实例处理处理数据时因为数据处理程序不止一次的调用(不同的学生或同一学生不同时间),所以需要建立基于图形用户界面(G
matlab赋值给ColuName,基于MATLAB及数据库技术的实验数据检验及存取研究
最新推荐文章于 2023-12-21 16:53:00 发布