文字

Basic usage

All examples in the MaxDB PHP documentation use the HOTELDB demo database from MaxDB. More about this database can be found at » http://maxdb.sap.com/doc/7_7/44/d8c25164bb38d0e10000000a1553f7/content.htm.

To use the examples in the MaxDB PHP documentation, you have to load the tutorial data into your database. Then you have to set maxdb.default_db in php.ini to the database that contains the tutorial data.

This simple example shows how to connect, execute a query, print resulting rows and disconnect from a MaxDB database.

Example #1 MaxDB extension overview example

<?php
$link 
maxdb_connect ( "localhost" "MONA" "RED" "DEMODB" );
   

if ( maxdb_connect_errno ()) {
   
printf ( "Connect failed: %s\n" maxdb_connect_error ());
   exit();
}


$query  "SELECT * FROM hotel.city" ;
$result  maxdb_query ( $link $query ) or die( "Query failed : "  maxdb_error ());


echo  "<table>\n" ;
while (
$line  maxdb_fetch_array ( $result MAXDB_ASSOC )) {
    echo 
"  <tr>\n" ;
    foreach (
$line  as  $col_value ) {
        echo 
"    <td> $col_value </td>\n" ;
    }
    echo 
"  </tr>\n" ;
}
echo 
"</table>\n" ;


maxdb_free_result ( $result );


maxdb_close ( $link );
?>

The following example shows how to bind variables to a SELECT INTO statement.

Example #2 Example for use of SELECT INTO statements

<?php
$link 
maxdb_connect ( "localhost" "MONA" "RED" "DEMODB" );


if (! $link ) {
   
printf ( "Connect failed: %s\n" maxdb_connect_error ());
   exit();
}
   

$stmt  maxdb_prepare  ( $link "SELECT percentage INTO ? FROM hotel.countrylanguage where language = ?" );
if (!
$stmt ) {
  
printf  ( "Prepare failed: %s\n" maxdb_error ( $link ));
}

$name  "Mbundu" ;

maxdb_stmt_bind_param ( $stmt 'ds' $percentage $name );
maxdb_stmt_execute ( $stmt );

printf  ( "%f\n" $percentage );

maxdb_stmt_close  ( $stmt );
?>

The following example shows how to use MaxDB database procedures.

Example #3 Example fore using database procedures

<?php
$link 
maxdb_connect ( "localhost" "MONA" "RED" "DEMODB" );


if (! $link ) {
   
printf ( "Connect failed: %s\n" maxdb_connect_error ());
   exit();
}

maxdb_report  ( MAXDB_REPORT_OFF );
maxdb_query ( $link , "DROP DBPROC test_proc" );
maxdb_report  ( MAXDB_REPORT_ERROR );

$query  "create dbproc test_proc (INOUT e_text char(72)) AS select * from SYSDBA.DUAL; fetch into :e_text;" ;

maxdb_query ( $link $query );


$stmt  maxdb_prepare  ( $link "CALL test_proc (?)" );
if (!
$stmt ) {
  
printf  ( "Prepare failed: %s\n" maxdb_error ( $link ));
}

maxdb_stmt_bind_param ( $stmt 's' $result );
maxdb_stmt_execute ( $stmt );

printf  ( "%s\n" $result );

maxdb_stmt_close  ( $stmt );
?>
上一篇: 下一篇: