999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Matlab與VC++、Oracle數據庫接口技術研究及實現

2014-02-28 07:50:34池興穎
遵義師范學院學報 2014年4期
關鍵詞:可視化界面數據庫

袁 勇,池興穎

(遵義師范學院網絡管理中心,貴州遵義563000)

Matlab與VC++、Oracle數據庫接口技術研究及實現

袁 勇,池興穎

(遵義師范學院網絡管理中心,貴州遵義563000)

Matlab將高性能的數值計算、符號計算和可視化集成一體,并有豐富的工具箱,使用方便,編程高效;VC++是基于Windows平臺的可視化集成開發環境,功能強大;Oracle數據庫是目前最流行的數據庫軟件產品之一,具有完整的數據管理功能。Matlab與VC++、Oracle數據庫接口實現,可以取長補短,發揮各自的優勢,為編程人員帶來諸多便利。

Matlab;VC++;Oracle數據庫;接口技術

Matlab是美國MathWorks公司研發的一種科學計算軟件,它將高性能的數值計算、符號計算和可視化集成在一起,并提供大量的內置函數及功能豐富的工具箱,使用方便,編程效率高。然而,Matlab是一種解釋性語言,運行效率低,不適合作為通用的編程平臺。VC++是 Microsoft公司推出的一個基于Windows平臺的可視化的集成開發環境,在運行速度、功能性以及應用程序界面開發方面功能強大,但在數值計算和圖形繪制方面,VC++并不具備太多優勢。Oracle是美國Oracle公司(甲骨文)提供的以分布式數據庫為核心的一組軟件產品,是目前最流行的客戶/服務器(CLIENT/SERVER)或B/S體系結構的數據庫之一。

實現Matlab與VC++接口技術,可以提高編程效率。實現Matlab與Oracle數據庫接口技術,可以將數據庫中的數據可視化地顯示出來,使數據更形象化的展示給用戶,為數據使用人員帶來便利。

1 Matlab與VC++接口技術研究及實現

1.1 Matlab與VC++接口技術研究

Matlab與 VC++連接方式主要有三種:通過Matlab引擎的方式;Matlab編譯器(MCC);調用COM組件實現[1]。

Matlab引擎采用客戶機/服務器 (Client/Server)的方式,提供了一組MATAB API函數,通過調用這些函數實現應用程序進程之間的數據傳遞。MCC是Matlab中經過優化的編譯器,用戶可以將Matlab數學庫、圖形庫和界面的Matlab程序轉化為獨立于Matlab的EXE應用程序和DLL動態連接庫,在VC中編寫程序界面并加載調用動態連接庫,實現兩者之間的連接。COM(Component Object Model),即組件對象模型,它是一個開放的組件標準,有相當強的擴充與擴展能力。COM規范了對象模型和編程要求,使得COM對象可以和其他對象之間相互操作。用COM規范定義的組件模型除了具有基本的面向對象特性如封閉、多態性等特點外,基于COM的混合編程方法也是Mathworks公司推薦使用的方法。

1.2 基于COM的Matlab與VC++接口實現

用COM組件的方式實現VC++與Matlab的混合編程技術。其具體步驟如下:

(1)編寫能在Matlab平臺下運行的相關m函數文件。

function test_huatu()//繪制[-10,10]區間的sin函數

(2)在Matlab6.5的Command Window中輸入comtool命令,即可出現COM編輯界面,如圖1所示。

圖1 COM編輯界面

(3)建立工程,在COM編輯界面中。選擇File—〉New Project,彈出圖2的工程設置界面;在設置界面的“Component name”項中填寫組件名稱“component”,這時候會自動生成類,將自動生成類選中并Remove掉。在“Classname”項中填寫類名稱“test_ huatu”,然后將test_huatu類添加,并在Compileroptions中將Builddebugversion和Showverboseoutput勾選。

圖2 COM工程設置圖

(4)給工程添加文件,選中COM編輯界面中的test_huatu工程,點擊上面的AddFile,并將已經寫好的名為“test_huatu”的m函數添加進來。

(5)生成COM組件。在編輯框中點擊Build—〉COMObject,出現如圖3所示,即為組件生成成功。

圖3 組件構建成功圖

(6)VC調用生成的COM組件。

1)在VC中建立名為test的基于對話框的MFC (exe)工程,并在該工程對話框中添加按鈕。

2)將 component_idl.h、component_idl_i.c和mwcomtypes.h文件拷貝到VC建立的工程test目錄下。前兩個是COM組件編譯時生成的,最后一個在 Matlab安裝路徑中(D:MATLAB6p5externinclude)。

3)將上面三個文件加入工程:工程-〉添加工程-〉Files,選擇剛剛拷到目錄下的 component_idl.h、 component_idl_i.c和mwcomtypes.h三個文件,并為程序添加頭文件component_idl.h和mwcomtypes.h。

4)設置預編譯頭文件:工程-〉設置,選擇C/C++項precomplied Headers/M自動使用預補償頁眉。

5)為相應的菜單添加函數代碼,就可以在VC中調用相應的Matlab程序。下面給出其示

hr=pImyclass-〉test_huatu();

6)最終通過調用com組件繪制圖形(如圖4)。

圖4 繪制sin曲線圖

2 Matlab連接Oracle數據庫接口技術研究及實現

2.1 Matlab連接Oracle數據庫接口技術研究

Matlab連接Oracle數據庫的方式有兩種,通過ODBC或者JDBC連接到數據庫。此處,我們只討論通過ODBC連接到Oracle數據庫。通過Matlab讀取Oracle數據庫中的數據,并繪圖。為了滿足實驗需求,首先在Oracle數據庫的scott用戶下建立測試用表matora.

然后向matora表中插入數據{(1,1);(2,4);(3,9); (4,16);(5,25)}。

2.2 通過ODBC實現Matlab與Oracle數據庫的連接

(1)在Windows下“開始”→“控制面板”→“管理工具”→“數據源(ODBC)”

(2)選擇“用戶DSN”→“添加”→選擇“Oraclein OraDb10g_home1”,點擊“完成”。

(3)在Oracle ODBC Driver Configuration中將Data Source Name設置為test。

(4)在Matlab中建立到Oracle的連接測試。

conn=database('test','scott','123456');(回車即可)//scott為數據庫用戶,123456為修改后的scott用戶的密碼。

3 總結

Matlab與VC++、Oracle數據庫各有優勢,將它們的優勢整合,規避弱點,在編程開發過程中將更為高效,從而節約人力、財力。本文以Matlab7.0與VC+ +6.0、Oracle10G為環境,研究了Matlab與VC及Or-acle的接口技術,并進行了實現,為使用Matlab與VC++、Oracle數據庫聯合開發的軟件開發人員提供一些編程參考,進而充分利用Matlab軟件的優勢來提高編程效率。

圖5 matlab調用Oracle中數據繪制y=x2函數圖

[1]岳玉芳,尤忠生,張玉雙.基于COM的VC與Matlab混合編程[J].微機發展,2005,15(5):46-48.

[2]李芳,徐麗.基于COM組件的Matlab7_x與VC_6_0接口技術及實際應用[J].計算機應用與軟件,2009,26(2):131-134.

[3]張志涌.精通MATLAB6.5版教程[M].北京:北京航天航空大學出版社,2003.

[4]王彬,代彥波,顏鵬博.Oracle10g簡明教程[M].北京:清華大學出版社,2006.

(責任編輯:朱 彬)

the Researches and Realization of Interfacing of Matlab and VC++and Oracle Data

YUAN Yong,CHI Xing-ying
(Network Management Center,Zunyi Normal College,Zunyi 563000,China)

Matlab,an integration of numerical computing,symbolic computation and visualization,has a rich toolbox which is easy to use and efficient in programming;VC++,a visually integrated development environment,is based on the Windows platform and very powerful;Oracle database,one of the most popular database products,is possessed of full data management capabilities.And the realization of interfacing of Matlab and VC++and Oracle Data can complement each other and bring each other’s superiority into full play, thus bring more conveniences to programmers.

Matlab;VC++;Oracle data;interfacing

TP311

A

1009-3583(2014)-0072-04

2014-04-22

袁 勇,男,貴州遵義人,遵義師范學院網絡管理中心網絡工程師,碩士,研究方向:數字優化仿真技術及應用。

猜你喜歡
可視化界面數據庫
基于CiteSpace的足三里穴研究可視化分析
基于Power BI的油田注水運行動態分析與可視化展示
云南化工(2021年8期)2021-12-21 06:37:54
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
基于CGAL和OpenGL的海底地形三維可視化
“融評”:黨媒評論的可視化創新
傳媒評論(2019年4期)2019-07-13 05:49:14
基于FANUC PICTURE的虛擬軸坐標顯示界面開發方法研究
數據庫
財經(2017年2期)2017-03-10 14:35:35
人機交互界面發展趨勢研究
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
主站蜘蛛池模板: 色丁丁毛片在线观看| 少妇被粗大的猛烈进出免费视频| 国产成人久久777777| h网址在线观看| 亚洲人人视频| 日韩欧美综合在线制服| 国产精品亚洲五月天高清| 精品国产电影久久九九| 国产免费观看av大片的网站| 中文无码精品A∨在线观看不卡| 亚洲最大综合网| 国产一区二区三区精品久久呦| 日韩精品成人在线| 亚卅精品无码久久毛片乌克兰| 亚洲a级在线观看| 国产精品成人不卡在线观看| 一级不卡毛片| 婷婷中文在线| 亚洲成a人在线播放www| 中文字幕在线观| 亚洲v日韩v欧美在线观看| 精品视频第一页| 欧美性色综合网| 99无码熟妇丰满人妻啪啪| 欧美亚洲另类在线观看| 91精品国产一区自在线拍| 久久综合九九亚洲一区 | 国产视频只有无码精品| 97在线碰| 精品无码一区二区在线观看| 欧美特黄一级大黄录像| 欧美激情伊人| 久久www视频| 国产精品久久久久久久久久久久| 中文字幕日韩久久综合影院| 国产丝袜精品| 色国产视频| 国产精品福利社| 亚洲av无码牛牛影视在线二区| 无码AV日韩一二三区| 中文字幕永久视频| 99精品福利视频| 久久久国产精品免费视频| 亚洲精品欧美日韩在线| 最新国产你懂的在线网址| 亚洲精品欧美日韩在线| WWW丫丫国产成人精品| 欧美中文字幕在线播放| 亚洲欧洲日韩久久狠狠爱| 国产激爽大片在线播放| 无码在线激情片| 男人天堂伊人网| 另类专区亚洲| 亚洲人成电影在线播放| 亚洲V日韩V无码一区二区| 久久精品丝袜| 国产精品欧美亚洲韩国日本不卡| 四虎永久在线| 欧美日本一区二区三区免费| 亚洲一区二区约美女探花| 亚洲天堂自拍| 久草中文网| 5555国产在线观看| 狼友视频一区二区三区| 亚洲国产中文欧美在线人成大黄瓜| 美女啪啪无遮挡| 欧美性久久久久| 天天色天天操综合网| 97青草最新免费精品视频| 成人午夜福利视频| 综合天天色| 97青草最新免费精品视频| 999国产精品永久免费视频精品久久| 91精品伊人久久大香线蕉| 欧美一级专区免费大片| 婷婷午夜天| 国产精品自拍露脸视频| 国产精品免费入口视频| 久久久久国色AV免费观看性色| 久久久久久久蜜桃| www亚洲精品| 毛片免费视频|