1. Modifying Sqlsrv benchmarks to use sqlsrv_fetch_array to make the fetch consistent with PDO_SQLSRV. 2. Modifying PDO_SQLSRV benchmarks to use exec() instead of query()

This commit is contained in:
ulvii 2017-06-05 17:04:57 -07:00
parent b4b3669d5b
commit 6b2ead8a4c
2 changed files with 18 additions and 15 deletions

View file

@ -99,7 +99,7 @@ class PDOSqlsrvUtil{
$sql = "SELECT * FROM $tableName";
$stmt = self::prepare( $conn, $sql );
self::execute( $stmt );
while ( $row = self::fetch( $stmt )){}
while ( $row = self::fetch( $stmt )){}
}
public static function deleteWithPrepare( $conn, $tableName ){
@ -151,37 +151,37 @@ class PDOSqlsrvUtil{
private function createDatabase( $conn, $dbName ){
$sql = "CREATE DATABASE $dbName";
self::query( $conn, $sql );
$conn->exec( $sql );
}
public static function dropDatabase( $conn, $dbName ){
$sql = "USE MASTER;DROP DATABASE $dbName";
self::query( $conn, $sql );
$conn->exec( $sql );
}
public static function createTable( $conn, $tableName, $params ){
$sql = "CREATE TABLE $tableName ($params)";
self::query( $conn, $sql );
$conn->exec( $sql );
}
public static function dropTable( $conn, $tableName ){
$sql = "DROP TABLE $tableName";
self::query( $conn, $sql );
$conn->exec( $sql );
}
private function useDatabase( $conn, $dbName ){
$sql = "USE $dbName";
self::query( $conn, $sql );
$conn->exec( $sql );
}
private function createStoredProc( $conn, $procName, $params, $text ){
$sql = "CREATE PROCEDURE $procName $params AS $text";
self::query( $conn, $sql );
$conn->exec( $sql );
}
private function dropStoredProc( $conn, $procName ){
$sql = "DROP PROCEDURE $procName";
self::query( $conn, $sql );
$conn->exec( $sql );
}
private function query( $conn, $sql ){

View file

@ -24,8 +24,7 @@ class SqlsrvUtil{
public static function selectVersion( $conn ){
$sql = "SELECT @@Version";
$stmt = self::query( $conn, $sql );
self::fetch( $stmt );
return self::getField( $stmt, 0 );
return self::fetchArray( $stmt );
}
public static function createDbTableProc( $conn, $databaseName, $tableName, $procName ){
@ -105,11 +104,7 @@ class SqlsrvUtil{
$sql = "SELECT * FROM $tableName";
$stmt = self::prepare( $conn, $sql, array());
self::execute( $stmt );
while ( self::fetch( $stmt )){
for ( $i=0; $i<10; $i++ ){
self::getField( $stmt, $i );
}
}
while( $row = self::fetchArray( $stmt ) ) {}
}
public static function createCRUDTable( $conn, $tableName ){
@ -148,6 +143,14 @@ class SqlsrvUtil{
return $ret;
}
public static function fetchArray( $stmt ){
$row = sqlsrv_fetch_array( $stmt );
if ( $row === false ){
die( print_r( sqlsrv_errors(), true));
}
return $row;
}
public static function getField( $stmt, $index ){
return sqlsrv_get_field( $stmt, $index );
}