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
随意转载~但请保留教程地址★