You are here

public function Schema::tableExists in Drupal 9

Same name in this branch
  1. 9 core/lib/Drupal/Core/Database/Schema.php \Drupal\Core\Database\Schema::tableExists()
  2. 9 core/lib/Drupal/Core/Database/Driver/sqlite/Schema.php \Drupal\Core\Database\Driver\sqlite\Schema::tableExists()
  3. 9 core/lib/Drupal/Core/Database/Driver/pgsql/Schema.php \Drupal\Core\Database\Driver\pgsql\Schema::tableExists()
  4. 9 core/lib/Drupal/Core/Database/Driver/mysql/Schema.php \Drupal\Core\Database\Driver\mysql\Schema::tableExists()
Same name and namespace in other branches
  1. 8 core/lib/Drupal/Core/Database/Driver/sqlite/Schema.php \Drupal\Core\Database\Driver\sqlite\Schema::tableExists()

Check if a table exists.

Parameters

$table: The name of the table in drupal (no prefixing).

Return value

TRUE if the given table exists, otherwise FALSE.

Overrides Schema::tableExists

9 calls to Schema::tableExists()
Schema::addField in core/lib/Drupal/Core/Database/Driver/sqlite/Schema.php
Add a new field to a table.
Schema::addIndex in core/lib/Drupal/Core/Database/Driver/sqlite/Schema.php
Add an index.
Schema::addPrimaryKey in core/lib/Drupal/Core/Database/Driver/sqlite/Schema.php
Add a primary key.
Schema::addUniqueKey in core/lib/Drupal/Core/Database/Driver/sqlite/Schema.php
Add a unique key.
Schema::alterTable in core/lib/Drupal/Core/Database/Driver/sqlite/Schema.php
Create a table with a new schema containing the old content.

... See full list

File

core/lib/Drupal/Core/Database/Driver/sqlite/Schema.php, line 29

Class

Schema
SQLite implementation of \Drupal\Core\Database\Schema.

Namespace

Drupal\Core\Database\Driver\sqlite

Code

public function tableExists($table) {
  $info = $this
    ->getPrefixInfo($table);

  // Don't use {} around sqlite_master table.
  return (bool) $this->connection
    ->query('SELECT 1 FROM ' . $info['schema'] . '.sqlite_master WHERE type = :type AND name = :name', [
    ':type' => 'table',
    ':name' => $info['table'],
  ])
    ->fetchField();
}