Matlab数据链接与查询

前言

在前文中讲述了从Database Toolbox链接数据库。在Matlab中同样可以使用视化工具Database Toolbox去执行一些SQL操作。但是,对于数据库编程来讲,在执行脚本程序的时候并不希望去手动打开可视化工具,应此需要在命令行中链接和执行SQL命令。

内容摘要

本文主要讲述

  1. 在命令行中连接数据库
  2. 执行SQL语句
  3. 将结果存储到对象
  4. 输出数据

具体操作

  • 连接数据库

本文主要使用的是MySQL数据库,连接使用的是JDBC驱动(驱动的介绍、下载和安装请查看Matlab链接MySQL方法)。如果你需要使用ODBC连接,大致流程基本一致,具体细节查询官方文档和其他资料,在这里不作细节阐述。

数据库链接,首先需要编写链接所使用的语句。首先对链接语句的作用和编写举例说明:

conn = database(instance,username,password,driver,databaseurl)

上面这条语句介绍了链接语句的编写要求:conn是返回的链接对象, database是matlab中用于链接数据库的函数,instance参数是你需要链接的MySQL中的数据名称,username是链接MySQL的用户名,password是用户名为username对应的密码,dirver是数据库(本文中使用的是MySQL)与Matlab的驱动程序,databaseurl的描述请见Matlab链接MySQL方法。针对这样的标准,本文给出了作者实际使用的示例,供参考: conn=database(‘test‘, ‘root‘, ‘‘, ‘mysql_connector_java_5.1.35_bin.jar‘, ‘jdbc:mysql://localhost:3306/test‘)

然后使用exec函数执行上面的链接语句: exec(conn,‘sqlquery‘)

  • 执行SQL语句

在链接数据库成功后,准备相关的SQL语句,并执行

uid=exec(conn, ‘select uid form user‘);

uid=fetch(uid);

注:这里的SQL语句执行分为:执行SQL文件和直接执行SQL语句两种。至于具体的执行SQL文件操作细节这里不作细节阐述。

  • 将结果存储到对象

执行上面所述的SQL语句后,需要将查询结果进行处理:
uidData=uid.data;

  • 输出数据

输入uidData,即可得到需要的结果信息。

 

以上仅代表个人观点,如有错误敬请指正。

时间: 2024-11-05 14:44:19

Matlab数据链接与查询的相关文章

MySQL大数据量分页查询方法及其优化

方法1: 直接使用数据库提供的SQL语句 语句样式: MySQL中,可用如下方法: SELECT * FROM 表名称 LIMIT M,N 适应场景: 适用于数据量较少的情况(元组百/千级) 原因/缺点: 全表扫描,速度会很慢 且 有的数据库结果集返回不稳定(如某次返回1,2,3,另外的一次返回2,1,3). Limit限制的是从结果集的M位置处取出N条输出,其余抛弃. 方法2: 建立主键或唯一索引, 利用索引(假设每页10条) 语句样式: MySQL中,可用如下方法: SELECT * FRO

高级数据操作--子查询

一.子查询——标量子查询 子查询的概念 思考: 如何得到php_student表中成绩最高的学生的记录? 1 select * from php_student order by score desc limit 1; 但是,存在一个逻辑问题,如果最高分有很多人,怎么办! 1 insert into php_student values 2 (null,'观世音','female',17,5000,'南海',100), 3 (null,'如来','male',17,6000,'西天',100);

数据表格 - DataGrid - 查询

toolbar头部工具栏 <script type="text/javascript"> $(function () { $("#datagrid").datagrid({ url: "<%=homePage%>/testController/datagrid.ajax?type=list", title: "标题", iconCls: "icon-save", pagination

ExtJS 4.2 业务开发(二)数据展示和查询

本篇开始模拟一个船舶管理系统,提供查询.添加.修改船舶的功能,这里介绍其中的数据展示和查询功能. 目录 1. 数据展示 2. 数据查询 3. 在线演示 1. 数据展示 在这里我们将模拟一个船舶管理系统,并提供查询.添加.修改的功能. 大致的目录结构如下: ShipMgrTab.js :船舶业务的入口. controller 目录:存放船舶业务的逻辑控制文件. model 目录:存放船舶业务的model文件. store 目录 :存放船舶业务的store文件. view 目录 :存放船舶业务的组件

使用JDBC连接MySQL数据库--典型案例分析(八)----实现员工数据的分页查询

转载请注明:http://blog.csdn.net/uniquewonderq 问题: 使用JDBC连接Mysql数据库,实现对Emp表数据的分页查询功能. 方案: 对于较大的数据量,通常采用分页查询的方式.不同的数据库产品有不同的数据库级的分页查询策略.例如:Oracle通常使用rownum的方式:而Mysql使用limit的方式. Oracle采用rownum和子查询实现分页查询,SQL语句如下, select * from (select rownum rn,empno,ename,jo

Java学习之路:2、Mysql 链接与查询

1.事实上我发现有了php的功力在里面,学习java起来还是不是很费劲,只是java就没有面向过程这一说 package second; import java.sql.*;//导入 public class mysql { public static void main(String[] args) throws SQLException{ String driver = "com.mysql.jdbc.Driver";//声明要被导入的类 String dsn = "jd

[.NET] SQL数据总笔数查询

[.NET] SQL数据总笔数查询 程序下载 范例下载:点此下载 原始码下载:点此下载 NuGet封装:点此下载 数据查询 开发系统时,使用C#执行SQL查询指令,就可以从SQL数据库里查询所需数据. SELECT Id, Name FROM Users 数据总笔数查询 当数据量过多时,系统会需要采用分页的方式来分批取得数据,但在这之前需要先取得数据总笔数,来告知系统共有多少数据等待处理.这时可以改写原有的SQL查询指令,在其中加入COUNT(*),来计算查询结果的总笔数.(将查询指令改写为子查

查询一个月最后一天的总用户数,数据库中没有保存最好一天的数据,就查询本月数据库已存有的最后一天的数据

select total_user from a_user_no where date_time=(select max(date_time) from a_user_no  where '2013-05'+ "'=to_char(date_time,'yyyy-mm')); 通过max 函数来去5月份出现最大日期的数据 查询一个月最后一天的总用户数,数据库中没有保存最好一天的数据,就查询本月数据库已存有的最后一天的数据,布布扣,bubuko.com

matlab数据转换为字符串并合并字符串标注到图像曲线上

1.把数字转换为字符串 [函数描述]str=num2str(A):把数组A中元素取小数点后四位,并转换为字符串. [函数实例]把数字转换为字符串,输入语句: str1=num2str(pi) str2=num2str(eps) 输出结果: str1 =3.1416 str2 =2.2204e-016 2.字符串合并 strcat(str1,str2,-.,strn); 将str1,str2,-strn合并成为一个字符串 3.通过 gtext(str);可以把字符串标注到图像上面,注意str一定要