首页 > php开发 > PHP调用Oracle,mysql,mssql server 储存过程方法

PHP调用Oracle,mysql,mssql server 储存过程方法

下面总结了三种流行的数据库,如何利用php来调用它们的存储过程,我们讲有mysql教程,oracle,mssql server.

PHP实例代码如下:

<?php 
function check_login($user, $pass) { 
$conn = ocilogon('user', 'pass', 'database'); 
$sql = 'begin :result := test.check_login(:user, :pass); end;'; 
$stmt = oci_parse($conn, $sql); 
//开源代码phprm.com 
$result = ''; 
oci_bind_by_name($stmt, ':user', $user, 32); 
oci_bind_by_name($stmt, ':pass', md5($pass), 32); 
oci_bind_by_name($stmt, ':result', $result, 10); 
oci_execute($stmt); 
ocilogoff($conn); 
 
return $result; 
}

调用mysql,存储过程改成:

create procedure in_out(in uid int) begin 
set @msg='hello'; 
select *,@msg from manage_loginhistory where h_uid=uid; 
end;

php调用改成:

$sql = "call in_out(39)"; 
$rs=mysql_query($sql); 
$row=mysql_fetch_array($rs); 
调用ms sql server:
$user_name = '龙之泪';      //声明一个变量,用做存储过程的输入参数 
$password = '123456';       //再声明一个变量,用做存储过程的另一个输入参数 
$info = '';                            //$info,用来接受从存储过程输出的参数值 
$host="192.168.0.1";         //定义数据库服务器 
$user="sa";                        //连接用户名 
$password="123456";        //连接密码 
$db="sample";                    //数据库名称 
$dblink=mssql_connect($host,$user,$password) or die("can't connect to mssql"); //连接数据库服务器 
mssql_select_db($db,$dblink)   or die("can't select sample");//选择数据库 
$sp = mssql_init("test");  //初始化一个存储过程 
//为存储过程添加一个参数,@user_name为参数名,$user_name为参数对应的php变量,sqlvarchar表明该参数类型为sql server的varchar类型,第一个false表示该参数不是输出参数,即该参数是输入参数,第二个false表示该参数不允许为null,最后的30表示该变量的长度为30 
mssql_bind($sp,"@user_name",$user_name,sqlvarchar,false,false,30); 
mssql_bind($sp,"@password",$password,sqlvarchar,false,false,30); 
mssql_bind($sp,"@info",$info,sqlvarchar,true,false,30); //为存储过程添加一个输出参数 
mssql_execute($sp); //执行该存储过程 
echo $info; //打印出从存储过程中返回的输出参数值


教程链接:http://www.phprm.com/develop/fs5355.html

随意转载~但请保留教程地址★

标签:php调用oracle server储存过程

发表留言