C.J. Date Novatec
Authorized Portuguese translation of the English edition of titled View Updating and Relational Theory, ISBN 9781449357849 2012 Chris Date. This translation is published and sold by permission of O'Reilly Media, Inc., the owner of all rights to publish and sell the same. Tradução em português autorizada da edição em inglês da obra View Updating and Relational Theory, ISBN 9781449357849 2012 Chris Date. Esta tradução é publicada e vendida com a permissão da O'Reilly Media, Inc., detentora de todos os direitos para publicação e venda desta obra. Novatec Editora Ltda. 2016. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer processo, sem prévia autorização, por escrito, do autor e da Editora. Editor: Rubens Prates PY20160322 Tradução: Acauan Fernandes Revisão técnica: BrodTec.com Revisão gramatical: Adriana Alves Editoração eletrônica: Carolina Kuwabata Assistente editorial: Priscila A. Yoshimatsu ISBN: 978-85-7522-488-5 Histórico de impressões: Abril/2016 Primeira edição Novatec Editora Ltda. Rua Luís Antônio dos Santos 110 02460-000 São Paulo, SP Brasil Tel.: +55 11 2959-6529 Email: novatec@novatec.com.br Site: www.novatec.com.br Twitter: twitter.com/novateceditora Facebook: facebook.com/novatec LinkedIn: linkedin.com/in/novatec
Sumário Sobre o autor... 11 Prefácio... 12 Prólogo... 19 Capítulo 1 Um exemplo motivador... 22 Princípio da permutabilidade... 24 Apenas tabelas de base: restrições... 26 Apenas tabelas de base: ações compensatórias... 27 Views: restrições e ações compensatórias... 29 Não há mágica... 30 Observações finais...31 Capítulo 2 O contexto técnico... 33 Relações e relvars... 34 Atribuição relacional... 37 Restrições de integridade... 42 Predicados de relvar... 44 Correspondendo, não correspondendo e estendendo... 49 Bancos de dados e dbvars... 52 Capítulo 3 O conceito de view: uma análise mais profunda... 56 Views são pseudovariáveis... 58 Independência de dados... 59 Como não fazê-lo... 63 Restrições e predicados... 67 Equivalência de informação...71 Observações finais... 75 7
8 Atualização de Views e Teoria Relacional Capítulo 4 Views de restrição... 79 O exemplo motivador revisitado... 79 Mais sobre ações compensatórias... 83 E os gatilhos?... 88 E operações de atualização explícita?... 90 Fornecedores e remessas... 92 Continuação do exemplo motivador... 96 Juntando tudo... 98 A questão, finalmente... 99 Restrições de intersecção... 101 Observações finais...104 Capítulo 5 Views de projeção...106 Exemplo 1: uma decomposição sem perda... 106 Continuação do exemplo 1: as relvars de projeção... 113 Continuação do exemplo 1: views... 114 Exemplo 2: outra decomposição sem perda... 115 Exemplo 3: uma decomposição com perda...122 Observações finais...127 Capítulo 6 Views de junção I: junções uma para uma...128 Exemplo 1: equivalência de informação...129 Exemplo 2: ocultação de informações...132 Observações finais... 141 Capítulo 7 Views de junção II: junções muitas para muitas...144 Exemplo 1: equivalência de informação...144 Revisão de views de projeção...152 Exemplo 2: escondendo informações...153 Observações finais...156 Capítulo 8 Views conjuntas III: junções uma para muitas...157 Exemplo 1: equivalência de informação...157 Exemplo 2: escondendo informações... 161 Observações finais...163 Capítulo 9 Views de intersecção...167 Exemplo 1: intersecção explícita... 168 Exemplo 2: intersecção implícita...172 Observações finais...180
Sumário 9 Capítulo 10 Views de união...182 Exemplo 1: união disjunta...182 Exemplo 2: intersecção explícita...185 Exemplo 3: intersecção implícita...188 Observações finais...194 Capítulo 11 Views de diferença...196 Exemplo 1: intersecção implícita...196 Exemplo 2: intersecção explícita... 204 Observações finais... 207 Capítulo 12 Agrupando e desagrupando views...209 Operadores GROUP e UNGROUP... 209 Um exemplo de GROUP / UNGROUP... 213 Um exemplo de SUMMARIZE...216 Capítulo 13 Views de extensão e resumo...221 Um exemplo de EXTEND... 221 Outro exemplo com SUMMARIZE...225 Capítulo 14 Atualizando por meio de expressões...230 Semântica não sintaxe (?)... 231 Algumas tautologias bem conhecidas...234 Transformações semânticas...237 Equivalência de informação revista...239 Observações finais...243 Capítulo 15 Ambiguidade revista...246 Predicados e restrições revisados... 248 Um exemplo de intersecção...249 Exemplos de união e diferença...252 Mais sobre predicados...255 Observações finais... 256 Apêndice A Algumas observações sobre atribuições relacionais...258 Apêndice B Operadores relacionais...265