©
Ce document utilise Manuel du site Web PHP chinois Libérer
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 );
?>