5. Banco de dados
• “Query builders” paraconsultas INSERT,
UPDATE, DELETE, MERGE, e SELECT.
• Suporteparareplicação master/slave,
transações, consultas multi-insert,delayed
inserts, entre outros.
• Suporte a SQLite.
• Uso do engine InnoDBporpadrão, aoinvés
de MyISAM, emMySQL, quandodisponível
6. Database layer
• Camada de abstração
• Permiteouso com diversosservidores de
BD
• Baseadonabiblioteca PDO do PHP
• FunçõesespeciaisparaconstruirSELECTs,
INSERTs, UPDATEs, DELETEseMERGEs
7. select com db_query
Drupal 6:
$query = db_query('SELECT title FROM {node}');
while ($n = db_fetch_object($query)) {
$titles[] = $n->title;
}
8. select com db_query
Drupal 7:
$results = db_query('SELECT title FROM
{node}');
foreach($results as $n) {
$titles[] = $n->title;
}
10. select com db_query
Drupal 7:
$results = db_query(
'SELECT title FROM {node}
WHERE uid = :uid’,
array(':uid' => 1)
);
foreach($results as $n) {
$titles[] = $n->title;
}
11. select com db_query
Drupal 7:
$results = db_query(
'SELECT title FROM {node}
WHERE title = :title',
array(':title' => 'Foz')
);
foreach($results as $n) {
$titles[] = $n->title;
}
12. select com db_query
Drupal 7:
$results = db_query(
'SELECT title FROM {node}
WHERE title LIKE :title',
array(':title' => 'Foz%')
);
foreach($results as $n) {
$titles[] = $n->title;
}
27. Novidades
• Arquivospassam a ser cidadãos de
primeiraclasse, ouseja, entidades
• Stream wrappers
• Managed Files vs. Unmanaged Files
– tabelafiles_managed
– funçõesfile_unmanaged_* paratodas as
operaçõesquenãosalvem dados natabela