You are here

public function Schema::getDatabaseInfo in Drupal driver for SQL Server and SQL Azure 3.0.x

Same name and namespace in other branches
  1. 8 drivers/lib/Drupal/Driver/Database/sqlsrv/Schema.php \Drupal\Driver\Database\sqlsrv\Schema::getDatabaseInfo()

Get database information from sys.databases.

Return value

mixed Database info.

File

drivers/lib/Drupal/Driver/Database/sqlsrv/Schema.php, line 1670

Class

Schema

Namespace

Drupal\Driver\Database\sqlsrv

Code

public function getDatabaseInfo() {
  static $result;
  if (isset($result)) {
    return $result;
  }
  $sql = <<<EOF
      select name
        , db.snapshot_isolation_state
        , db.snapshot_isolation_state_desc
        , db.is_read_committed_snapshot_on
        , db.recovery_model
        , db.recovery_model_desc
        , db.collation_name
    from sys.databases db
    WHERE DB_NAME(db.database_id) = :database
EOF;

  // Database is defaulted from active connection.
  $options = $this->connection
    ->getConnectionOptions();
  $database = $options['database'];
  $result = $this->connection
    ->queryDirect($sql, [
    ':database' => $database,
  ])
    ->fetchObject();
  return $result;
}