You are here

public function Schema::getComment in Zircon Profile 8

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

Retrieve a table or column comment.

File

core/lib/Drupal/Core/Database/Driver/mysql/Schema.php, line 552
Contains \Drupal\Core\Database\Driver\mysql\Schema.

Class

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

Namespace

Drupal\Core\Database\Driver\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 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 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);
}