当前位置:伍佰目录 » 站长资讯 » 免费资源 » 技术文章 » 文章详细

matlab怎么连接oracle数据库

来源:本站原创 浏览:492次 时间:2021-05-19
1、数据库环境搭建

(安装oracle数据库就不介绍了,如果oracle搭建好了可以不看第一步  ,直接看第二步骤ODBC环境搭建)

先cmd登陆oracle数据库

sqlplus sys as sysdba

 创建名为zwj密码为1234的用户

create user zwj identified by 1234;

给新创建的zwj用户添加connrct和resource权限 

SQL> grant connect,resource to zwj;

可视化登陆

运行以下SQL代码 (其实不运行也可以,只要自己在创建oracle数据表然后添加数据就行了,这样可以方便matlab读取数据表的数据)

-- 创建数据表CREATE TABLE dept (deptno NUMBER(2) CONSTRAINT PK_DEPT PRIMARY KEY,dname VARCHAR2(14) ,loc VARCHAR2(13) ) ;CREATE TABLE emp (empno NUMBER(4) CONSTRAINT PK_EMP PRIMARY KEY,ename VARCHAR2(10),job VARCHAR2(9),mgr NUMBER(4),hiredate DATE,sal NUMBER(7,2),comm NUMBER(7,2),deptno NUMBER(2) CONSTRAINT FK_DEPTNO REFERENCES DEPT );CREATE TABLE bonus (enamE VARCHAR2(10) ,job VARCHAR2(9)  ,sal NUMBER,comm NUMBER ) ;CREATE TABLE salgrade ( grade NUMBER,losal NUMBER,hisal NUMBER );-- 插入测试数据 —— deptINSERT INTO dept VALUES (10,'ACCOUNTING','NEW YORK');INSERT INTO dept VALUES (20,'RESEARCH','DALLAS');INSERT INTO dept VALUES (30,'SALES','CHICAGO');INSERT INTO dept VALUES (40,'OPERATIONS','BOSTON');-- 插入测试数据 —— empINSERT INTO emp VALUES (7369,'SMITH','CLERK',7902,to_date('17-12-1980','dd-mm-yyyy'),800,NULL,20);INSERT INTO emp VALUES (7499,'ALLEN','SALESMAN',7698,to_date('20-2-1981','dd-mm-yyyy'),1600,300,30);INSERT INTO emp VALUES (7521,'WARD','SALESMAN',7698,to_date('22-2-1981','dd-mm-yyyy'),1250,500,30);INSERT INTO emp VALUES (7566,'JONES','MANAGER',7839,to_date('2-4-1981','dd-mm-yyyy'),2975,NULL,20);INSERT INTO emp VALUES (7654,'MARTIN','SALESMAN',7698,to_date('28-9-1981','dd-mm-yyyy'),1250,1400,30);INSERT INTO emp VALUES (7698,'BLAKE','MANAGER',7839,to_date('1-5-1981','dd-mm-yyyy'),2850,NULL,30);INSERT INTO emp VALUES (7782,'CLARK','MANAGER',7839,to_date('9-6-1981','dd-mm-yyyy'),2450,NULL,10);INSERT INTO emp VALUES (����,��֤7788,'SCOTT','ANALYST',7566,to_date('19-04-1987','dd-mm-yyyy')-85,3000,NULL,20);INSERT INTO emp VALUES (7839,'KING','PRESIDENT',NULL,to_date('17-11-1981','dd-mm-yyyy'),5000,NULL,10);INSERT INTO emp VALUES (7844,'TURNER','SALESMAN',7698,to_date('8-9-1981','dd-mm-yyyy'),1500,0,30);INSERT INTO emp VALUES (7876,'ADAMS','CLERK',7788,to_date('23-05-1987','dd-mm-yyyy')-51,1100,NULL,20);INSERT INTO emp VALUES (7900,'JAMES','CLERK',7698,to_date('3-12-1981','dd-mm-yyyy'),950,NULL,30);INSERT INTO emp VALUES (7902,'FORD','ANALYST',7566,to_date('3-12-1981','dd-mm-yyyy'),3000,NULL,20);INSERT INTO emp VALUES (7934,'MILLER','CLERK',7782,to_date('23-1-1982','dd-mm-yyyy'),1300,NULL,10);-- 插入测试数据 —— salgradeINSERT INTO salgrade VALUES (1,700,1200);INSERT INTO salgrade VALUES (2,1201,1400);INSERT INTO salgrade VALUES (3,1401,2000);INSERT INTO salgrade VALUES (4,2001,3000);INSERT INTO salgrade VALUES (5,3001,9999);-- 事务提交COMMIT;

创建了数据表 

 查询一下数据

 2、ODBC环境搭建

控制面板->管理工具->ODBC 数据源(64 位)->添加DSN

 

选择添加oracle数据源 

数据源名称随便写,然后点击Test Connection

 服务名:ORCL 用户名填:zwj 密码:1234

 测试链接成功

3、 matlab运行程序
clear,clc;conn = database('oracle','zwj','1234');curs=exec(conn, 'select * from DEPT');curs=fetch(curs);data=curs.Dataclose(curs);close(conn);



伍佰目录声明:本站部分文章来源于网络,版权属于原作者所有。如有转载或引用文章/图片涉及版权问题,请联系我们处理.我们将在第一时间删除! 联系邮箱:tsk@qq.com

快速链接

最新收录

最新点入