function Connection::schema

Returns a DatabaseSchema object for manipulating the schema.

This method will lazy-load the appropriate schema library file.

@todo in drupal:11.0.0, make this method abstract since Schema is an abstract class.

Return value

\Drupal\Core\Database\Schema The database Schema object for this connection.

5 methods override Connection::schema()
Connection::schema in core/modules/sqlite/src/Driver/Database/sqlite/Connection.php
Returns a DatabaseSchema object for manipulating the schema.
Connection::schema in core/modules/mysql/src/Driver/Database/mysql/Connection.php
Returns a DatabaseSchema object for manipulating the schema.
Connection::schema in core/modules/pgsql/src/Driver/Database/pgsql/Connection.php
Returns a DatabaseSchema object for manipulating the schema.
Connection::schema in core/tests/fixtures/database_drivers/custom/fake/Connection.php
Returns a DatabaseSchema object for manipulating the schema.
StubConnection::schema in core/tests/Drupal/Tests/Core/Database/Stub/StubConnection.php
Returns a DatabaseSchema object for manipulating the schema.

File

core/lib/Drupal/Core/Database/Connection.php, line 1248

Class

Connection
Base Database API class.

Namespace

Drupal\Core\Database

Code

public function schema() {
  if (empty($this->schema)) {
    $class = $this->getDriverClass('Schema');
    $this->schema = new $class($this);
  }
  return $this->schema;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.