Change record status: 
Project: 
Introduced in branch: 
9.0.x
Introduced in version: 
9.0.0
Description: 

Contributed and custom database drivers no longer need to extend core's database agnostic database classes unless they need to override code provided functionality.

For example in previous versions of Drupal a database driver would have to provide Select class that extends Drupal\Core\Database\Query\Select. If the class contains no functionality it can be removed.

The following core classes have been removed:

  • Drupal\Core\Database\Driver\mysql\Delete
  • Drupal\Core\Database\Driver\mysql\Merge
  • Drupal\Core\Database\Driver\mysql\Select
  • Drupal\Core\Database\Driver\mysql\Transaction
  • Drupal\Core\Database\Driver\mysql\Truncate
  • Drupal\Core\Database\Driver\mysql\Update
  • Drupal\Core\Database\Driver\pgsql\Merge
  • Drupal\Core\Database\Driver\pgsql\Transaction
  • Drupal\Core\Database\Driver\sqlite\Delete
  • Drupal\Core\Database\Driver\sqlite\Merge
  • Drupal\Core\Database\Driver\sqlite\Transaction
  • Drupal\Core\Database\Driver\sqlite\Update

Use the following classes instead:

  • Drupal\Core\Database\Query\Delete
  • Drupal\Core\Database\Query\Merge
  • Drupal\Core\Database\Query\Select
  • Drupal\Core\Database\Query\Transaction
  • Drupal\Core\Database\Query\Truncate
  • Drupal\Core\Database\Query\Update
Impacts: 
Module developers