version 1.x

Basic queries

Basic queries to a database are done using DatabaseProvider::query. Since database providers are available as properties of the Database module, a simple query to a provider named main would look like this:
$result = $e->Database->main->query("select * from users");
Database queries are returned in the form of a DatabaseResult object you can manipulate. For example, use the DatabaseResult::isAny method to check if there were any results, or the DatabaseResult::countRows to get the number of rows in the result.
To loop through all the rows, iterate over the DatabaseResult::getRow method:
while ($row = $result->getRow()) {
echo $row->getField("name")."\n";
Rows are returned as DatabaseRow objects which, as you can see in the example above, allow you to retrieve information from each row in the results. Here's the result:
Douglas Engelbart
John Horton Conway
Frank Abagnale
Carl Sagan
Richard Feynmann
See this example working in the Cherrycake documentation examples site.