首页 > 后端开发 > 正文

php存储过程oracle报表框架 如何让PHP支持Oracle

2023-09-30 13:28:01 | 我爱编程网

php存储过程oracle报表框架 如何让PHP支持Oracle相关内容,小编在这里做了整理,希望能对大家有所帮助,关于php存储过程oracle报表框架 如何让PHP支持Oracle信息,一起来了解一下吧!

php存储过程oracle报表框架 如何让PHP支持Oracle

集智数据平台报表如何调用Oracle数据存储过程


需要注意的是,当在单元格中用call函数调用存储过程时,执行存储过程,返回结果数据集合,只能返回单列数据,如果存储过程返回多个



数据集的数据来自存储过程。sql语句执行的时候要先编译,然后执行。存储过程就是编译好了的一些sql语句。应用程序需要用的时候直接调用就可以了,所以效率比较高。存储过程可以用流控制语句编写,有很强的灵活性,可以完成复杂的判断和复杂的运算。存储过程可以返回结果集,可以返回参数,也可以同时返回结果集和参数。
存储过程的参数分为输入参数和输出参数两种。输入参数是存储过程执行的条件参数。输出参数类似于返回值,,但是输出参数具有两个重要的优势:可以使用输出参数从存储过程传递出VarChar,Int,Money或任何其他数据类型的值,而返回值则只能返回整数。输出参数的另一个优势就是在一个存储过程中可以有多个输出参数,一个存储过程可以包含1024个参数(其中包括输入和输出参数),但是只能包含一个返回值。
,在调用过程中,其中以Oracle的存储过程较为特殊,因为oracle数据库对于存储过程的输出参数有一定要求,需要设置为游标类型,下面就举个例子:

存储过程写法:

CREATE OR REPLACE PACKAGE TYPES AS
TYPE RQ_REF_CURSOR IS REF CURSOR;
— procedure getData( V_TEMP OUT TYPES.RQ_REF_CURSOR);
END;


CREATE OR REPLACE PROCEDURE RQ_TEST_CUR
(
V_TEMP OUT TYPES.RQ_REF_CURSOR,
PID IN VARCHAR
)
AS
BEGIN
OPEN V_TEMP FOR SELECT NAME FROM TEST WHERE ID = PID;
END RQ_TEST_CUR;


_ Create table
create table TEST
(
ID VARCHAR2(10) not null,
NAME VARCHAR2(10)
)
tablespace USERS
pctfree 10
initrans 1
maxtrans 255
storage
(
initial 64K
minextents 1
maxextents unlimited
);
_ Create/Recreate primary, unique and foreign key constraints
alter table TEST
add constraint TEST_PK unique (ID)
using index
tablespace USERS
pctfree 10
initrans 2
maxtrans 255
storage
(
initial 64K
minextents 1
maxextents unlimited
);

在报表中数据集的设置:




数据集中参数的设置:



报表参数的设置:



报表模版设计:


需要注意的是,当在单元格中用call函数调用存储过程时,执行存储过程,返回结果数据集合,只能返回单列数据,如果存储过程返回多个字段,则返回第一个字段的结果值。

php存储过程oracle报表框架 如何让PHP支持Oracle我爱编程网

如何让PHP支持Oracle

使你的php支持oracle,按照以下步骤即可:
1.安装php环境,找一下appserv或者xampp,一键安装,很方便
2.把php的ext目录下的php_oci8.dll拷到system32目录下
3.修改php.ini文件中的配置,去掉 ;extention = php_oci8.dll,去掉前面的分号
4.重启apache

两种方式和oracle数据库建立链接
1.$conn = oci_connect('username','password',"(DEscriptION=(ADDRESS=(PROTOCOL =TCP)(HOST=192.168.1.100)(PORT = 1521))(CONNECT_DATA =(SID=test)))");
2.$conn = oci_connect('username','password','192.168.1.100/test');
有的时候第一种方式不行,使用第二种,里面的几个参数分别是用户名、密码、oracle服务地址,其中test是服务名。

$sql = "select * from table_exmaple"
$ora_test = oci_parse($conn,$sql); //编译sql语句
oci_execute($ora_test,OCI_DEFAULT); //执行
while($r=oci_fetch_row($ora_test)) //取回结果
{
echo $ora_test[0];
echo "<BR>";
}

改成这样试下:
$dbconn = oci_connect('用户名','密码',"(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.136.1.10)(PORT=1521))(CONNECT_DATA=(SID=pmsbp)))");

php存储过程oracle报表框架 如何让PHP支持Oracle

oracle 怎么导出数据库里 所有的表结构和存储过程

假设原来的表是test1 要写到的表是test2test1的字段为 a b ctest2的字段为 d e f 其中a和d对应 b和e对应 c和f对应先把要写到的表清掉,执行如下语句:truncate table test2;然后把test1表的数据导入到test2表中,执行如下语句:insert into test2select * from test1;

以上就是php存储过程oracle报表框架 如何让PHP支持Oracle全部内容了,了解更多相关信息,关注我爱编程网。
与“php存储过程oracle报表框架 如何让PHP支持Oracle”相关推荐
php数据库框架oracle 如何让PHP支持Oracle
php数据库框架oracle 如何让PHP支持Oracle

如何让PHP支持OraclePHP操作Oracle数据库,官方推荐的方法是采用OCI8扩展。PHP操作Oracle数据库,官方推荐的方法是采用OCI8扩展。网上关于开启PHPOCI8扩展的方法,大致如下:(1)去掉php.ini(先用phpinfo看一下你的php.ini在什么位置,不要改错了)中extension=php_oci8.dll的注释。并保证php_

2023-09-28 17:48:25
支持oracle的php框架 php yii2框架 模型层放在的是哪一个文件夹
支持oracle的php框架 php yii2框架 模型层放在的是哪一个文件夹

如何在PHP中使用Oracle数据库(2)CreateATableUsingOCI下面我们将建立一个email个人信息簿。这次采用OCI8API指令相关PHP代码:PutEnv("ORACLE_SID=ORASID");$connection=OCILogon("username","password");if($connection==false){e

2023-09-16 08:07:31
php框架存储过程 php 什么时候用mysql 存储过程
php框架存储过程 php 什么时候用mysql 存储过程

php什么时候用mysql存储过程实现原理首先,需要知道怎么写mysql存储过程,了解mysq存储过程语言,其次,使用mysql工具创建存储过程。最后,通过mysql_query()函数执行mysql变量的设置和mysql存储过程及返回值。具体代码如下:mysql存储过程代码createprocedurepro_name(user_idint)begin

2023-09-10 00:10:33
nginx能用php框架吗 如何让nginx支持php的ci框架
nginx能用php框架吗 如何让nginx支持php的ci框架

如何让nginx支持php的ci框架NGINX默认支持CI框架,你需要另外了解的是nginx中CI框架的伪静态配置,一下这段加在 nginx.conf 的 http{内    location /{               index index.html index.htm index.php;               if (-e $request_filename) {

2023-09-18 09:20:30
ci框架对PHP的版本要求 如何让nginx支持php的ci框架
ci框架对PHP的版本要求 如何让nginx支持php的ci框架

如何选择php的版本您好,很高兴为您解答:开发新项目:推荐使用PHP7的版本,他是一个趋势,也是优化后的结晶,他的效率非常高。维护老项目:推荐使用PHP5.2的版本,非常稳定!使用开源项目/CMS之类的:查询源码支持的PHP版本,一般官网都有文档,像DeDecms推荐使用PHP5.2,WP最新版本推荐PHP7Laravel,Thinkphp5也支持PHP7了PHP怎么入门

2023-10-03 19:26:52
php框架支持redis php如何安装配置redis
php框架支持redis php如何安装配置redis

phpredis如何使用开始在PHP中使用Redis前,要确保已经安装了redis服务及PHPredis驱动,且你的机器上能正常使用PHP。PHP安装redis扩展/usr/local/php/bin/phpize#php安装后的路径./configure--with-php-config=/usr/local/php/bin/php-configmake&amp;&amp;

2023-09-07 21:51:10
php闭包在框架中的使用 php如何序列化/存储闭包(Closure)
php闭包在框架中的使用 php如何序列化/存储闭包(Closure)

php方法中如何获取闭包的值?亲,你好,很高兴为你解答该问题首先,你的这个写法是有问题的哦!~class A {                              public function aa() {                  // 函数体为空,所以外面不会有任何输出,即使设置变量来接受该方法,也不会有任何返回         // 所以你肯定拿不到123

2023-10-05 09:05:42
php支持分库分表的框架 PHP开发用哪种框架
php支持分库分表的框架 PHP开发用哪种框架

国外主流PHP框架对比评测最近简单的使用了目前在国内用的比较多的几个主流国外PHP框架(不包括国内框架)大致对这些框架有个直观上的感受简单分享一下对于哪些做框架选型的时候权当一个参考主要参考的框架包括CodeIgniterCakePHPZendFrameworkSymfony我对很多框架也没有认真使用只是简单试用了一下可能很多看法不成熟或者是错误的请大家指正一起成长CodeI

2023-10-05 06:10:24