function db_query

Executes an arbitrary query string against the active database.

Use this function for SELECT queries if it is just a simple query string. If the caller or other modules need to change the query, use db_select() instead.

Do not use this function for INSERT, UPDATE, or DELETE queries. Those should be handled via db_insert(), db_update() and db_delete() respectively.

Parameters

$query: The prepared statement query to run. Although it will accept both named and unnamed placeholders, named placeholders are strongly preferred as they are more self-documenting.

$args: An array of values to substitute into the query. If the query uses named placeholders, this is an associative array in any order. If the query uses unnamed placeholders (?), this is an indexed array and the order must match the order of placeholders in the query string.

$options: An array of options to control how the query operates.

Return value

DatabaseStatementInterface A prepared statement object, already executed.

See also

DatabaseConnection::defaultOptions()

Related topics

70 calls to db_query()
AggregatorCategoryBlock::getDerivativeDefinitions in drupal/core/modules/aggregator/lib/Drupal/aggregator/Plugin/Derivative/AggregatorCategoryBlock.php
Implements \Drupal\Component\Plugin\Derivative\DerivativeInterface::getDerivativeDefinitions().
AggregatorFeedBlock::getDerivativeDefinitions in drupal/core/modules/aggregator/lib/Drupal/aggregator/Plugin/Derivative/AggregatorFeedBlock.php
Implements \Drupal\Component\Plugin\Derivative\DerivativeInterface::getDerivativeDefinitions().
AggregatorTestBase::getCategories in drupal/core/modules/aggregator/lib/Drupal/aggregator/Tests/AggregatorTestBase.php
Pulls categories from {aggregator_category} table.
AggregatorTestBase::getFeedCategories in drupal/core/modules/aggregator/lib/Drupal/aggregator/Tests/AggregatorTestBase.php
Pulls feed categories from {aggregator_category_feed} table.
AggregatorTestBase::updateFeedItems in drupal/core/modules/aggregator/lib/Drupal/aggregator/Tests/AggregatorTestBase.php
Updates the feed items.

... See full list

3 string references to 'db_query'
drupal_get_filename in drupal/core/includes/bootstrap.inc
Returns and optionally sets the filename for a system resource.
ExceptionController::decodeException in drupal/core/lib/Drupal/Core/Controller/ExceptionController.php
This method is a temporary port of _drupal_decode_exception().
_drupal_decode_exception in drupal/core/includes/errors.inc
Decodes an exception and retrieves the correct caller.

File

drupal/core/includes/database.inc, line 210
Core systems for the database layer.

Code

function db_query($query, array $args = array(), array $options = array()) {
  if (empty($options['target'])) {
    $options['target'] = 'default';
  }
  return Database::getConnection($options['target'])
    ->query($query, $args, $options);
}