MATLAB程序设计Matlab与数据库的数据交互Word文档下载推荐.docx

上传人:b****5 文档编号:15778251 上传时间:2022-11-16 格式:DOCX 页数:22 大小:420.27KB
下载 相关 举报
MATLAB程序设计Matlab与数据库的数据交互Word文档下载推荐.docx_第1页
第1页 / 共22页
MATLAB程序设计Matlab与数据库的数据交互Word文档下载推荐.docx_第2页
第2页 / 共22页
MATLAB程序设计Matlab与数据库的数据交互Word文档下载推荐.docx_第3页
第3页 / 共22页
MATLAB程序设计Matlab与数据库的数据交互Word文档下载推荐.docx_第4页
第4页 / 共22页
MATLAB程序设计Matlab与数据库的数据交互Word文档下载推荐.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

MATLAB程序设计Matlab与数据库的数据交互Word文档下载推荐.docx

《MATLAB程序设计Matlab与数据库的数据交互Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《MATLAB程序设计Matlab与数据库的数据交互Word文档下载推荐.docx(22页珍藏版)》请在冰豆网上搜索。

MATLAB程序设计Matlab与数据库的数据交互Word文档下载推荐.docx

close

关闭数据库连接

commit

数据库改变参数

database

连接数据库

exec

执行SQL语句和打开游标

get

得到数据库属性

insert

导出MATLAB单元数组数据到数据库表

isconnection

判断数据库连接是否有效

isreadonly

判断数据库连接是否只读

ping

得到数据库连接信息

rollback

撤销数据库变化

set

设置数据库连接属性

sql2native

转换JDBCSQL语法为系统本身的SQL语法

update

用MATLAB单元数组数据代替数据库表的数据

表2:

数据库游标访问函数

attr

获得的数据集的列属性

关闭游标

cols

获得的数据集的列数值

columnnames

获得的数据集的列名称

fetch

导入数据到MATLAB单元数组

得到游标对象属性

querytimeout

数据库SQL查询成功的时间

rows

获取数据集的行数

设置游标获取的行限制

width

获取数据集的列宽

表3:

数据库元数据函数:

bestrowid

得到数据库表唯一行标识

columnprivileges

得到数据库列优先权

columns

得到数据库表列名称

crossreference

得到主键和外键信息

dmd

创建数据库元数据对象

exportedkeys

得到导出外部键信息

得到数据库元数据属性

importedkeys

得到导入外键信息

indexinfo

得到数据库表的索引和统计

primarykeys

从数据库表或结构得到主键信息

procedurecolumns

得到目录存储程序参数和结果列

procedures

得到目录存储程序

supports

判断是否支持数据库元数据

tableprivileges

得到数据库表优先权

tables

得到数据库表名称

上述仅列出函数名称与函数的主要功能,函数的具体使用请读者参考matlab的Database工具箱相关帮助信息。

2.3数据库数据读取

数据库数据读取主要由数据库连接,获取数据库信息,执行SQL查询语言查询数据,关闭数据连接等几个主要步骤组成。

在进行Matlab与数据库的交互前首先要对数据源进行配置(参见附录一)

(1)数据库连接函数database

database函数语法

conn=database('

datasourcename'

'

username'

password'

输入参数:

datasourcename:

数据库名称(连接对象的名称,如果不是本地数据,需输入网址或者IP地址及端口)

username:

数据库用户名

password:

数据库密码

输出参数:

Conn:

建立数据连接对象(内含连接信息、参数)

函数测试:

m文件DatabaseRead.m

%DatabaseReadTest

%codebyxxxxxxxxxx@

%建立数据连接

conn=database('

ARIS_SQL'

xx'

xxxxxxxxxx'

%数据库名称为“ARIS_SQL”为本数据库之间输入数据名称即可

%用户名为'

密码为'

读者需根据自己数据库的设置进行修改

%如果不是本地数据,需输入网址或者IP地址及端口

%数据库用户名为”xx”

%数据库密码为“xxxxxxxxxx”

结果输出:

conn=

Instance:

'

%数据名称

UserName:

%用户名称

Driver:

[]

URL:

Constructor:

[1x1com.mathworks.toolbox.database.databaseConnect]

Mesxxge:

Handle:

[1x1sun.jdbc.odbc.JdbcOdbcConnection]

TimeOut:

0

AutoCommit:

on'

%连接成功

Type:

DatabaseObject'

注释:

AutoCommit:

表示数据库链接成功

off'

表示数据库链接失败

(2)获取数据库连接信息函数ping

ping函数语法

ping(conn)

通过ping函数可以获得数据库连接的数据版本、数据名称、驱动程序、URL地址等等。

数据库连接对象

DatabaseProductName:

数据库产品名称

DatabaseProductVersion:

数据库产品版本

JDBCDriverName:

JDBC驱动名称

JDBCDriverVersion:

JDBC驱动版本

MaxDatabaseConnections:

数据库最大连接数量

CurrentUserName:

使用的数据库名称

DatabaseURL:

数据库URL地址

AutoCommitTranxxctions:

是否连接

参数测试:

%获取数据库连接信息

ping(conn);

ans=

DatabaseProductName:

MicrosoftSQLServer'

%数据库为'

DatabaseProductVersion:

09.00.1399'

%数据库版本为'

JDBCDriverName:

JDBC-ODBCBridge(SQLSRV32.DLL)'

%数据库的驱动程序为“JDBC-ODBCBridge”

JDBCDriverVersion:

2.0001(03.85.1132)'

%驱动程序版本“2.0001(03.85.1132)”

MaxDatabaseConnections:

%数据库最大连接数(未设置)

CurrentUserName:

dbo'

%当前用户名称“dbo”

DatabaseURL:

jdbc:

odbc:

%数据库连接地址'

AutoCommitTranxxctions:

True'

(3)执行SQL语句和打开游标函数exec

exec函数语法

curs=exec(conn,'

sqlquery'

输入参数

Conn:

数据库连接对象

Sqlquery:

sql数据库查询语句

输出参数

Curs:

结构体(游标)

该程序的目标是从数据库表StockData.dbo.Hs300中查询2008-01-01到2010-01-01之间是沪深300指数的点位.

SQL查询语言的框架为

Use数据库

Select数据内容

From数据表名称(查询目标表)

Where查询条件

Olderby排序方式

例如,在数据wind_db中的Price表中查询交易日在2012年的OpenPrice数据,按时间先后排序.

Usewind_db

SelectOpenPrice

FromPrice

Whereyear(time)==2012

Olderbytime

本节对SQL语言的语法不进行详细讲解,若读者需要阅读SQL语言书籍。

数据表StockData.dbo.Hs300的结构为:

表4:

StockData数据表结构

字段

类型

Date

Datetime类型

Price

Double类型

Vol

Sqlquery:

SQL语言

--全部价格数据

SELECTALLPrice

--从表StockData.dbo.Hs300中,存储的是沪深300的数据

FROMStockData.dbo.Hs300

--查询的价格数据的日期在2008-1-1与2010-01-01之间的(价格数据)

WHEREDateBETWEEN'

'

2008-01-01'

AND'

2010-01-01'

注释:

在Sql语言中”--”后的表示注释,类似matlab中的”%”。

Matlab语言

%查询数据

curs=exec(conn,'

SELECTALLPriceFROMStockData.dbo.Hs300WHEREDateBETWEEN'

输出结果:

Attributes:

Data:

DatabaseObject:

[1x1database]

RowLimi

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1