You are here

public function Schema::getComment in Drupal 10

Same name in this branch
  1. 10 core/modules/pgsql/src/Driver/Database/pgsql/Schema.php \Drupal\pgsql\Driver\Database\pgsql\Schema::getComment()
  2. 10 core/modules/mysql/src/Driver/Database/mysql/Schema.php \Drupal\mysql\Driver\Database\mysql\Schema::getComment()

Retrieve a table or column comment.

File

core/modules/mysql/src/Driver/Database/mysql/Schema.php, line 661

Class

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

Namespace

Drupal\mysql\Driver\Database\mysql

Code

public function getComment($table, $column = NULL) {
  $condition = $this
    ->buildTableNameCondition($table);
  if (isset($column)) {
    $condition
      ->condition('column_name', $column);
    $condition
      ->compile($this->connection, $this);

    // Don't use {} around information_schema.columns table.
    return $this->connection
      ->query("SELECT column_comment AS column_comment FROM information_schema.columns WHERE " . (string) $condition, $condition
      ->arguments())
      ->fetchField();
  }
  $condition
    ->compile($this->connection, $this);

  // Don't use {} around information_schema.tables table.
  $comment = $this->connection
    ->query("SELECT table_comment AS table_comment FROM information_schema.tables WHERE " . (string) $condition, $condition
    ->arguments())
    ->fetchField();

  // Work-around for MySQL 5.0 bug http://bugs.mysql.com/bug.php?id=11379
  return preg_replace('/; InnoDB free:.*$/', '', $comment);
}