helyoWAP

PÁGINAS WML GERADAS DINAMICAMENTE EM AMBIENTE ASP
 
(17)
Consulta ao bancoCinema.mdb (3)

Autores: Helio Fonseca Rosa e Andrea de Mello Rosa

Esta página contém 6 figuras grandes. Aguarde a carga se a conexão estiver lenta.


Vamos examinar a sentença Select. Você já sabe que certamente foi gerada pela ferramenta gráfica do Access. Antes, uma observação: a tela mostrada acima possui poucos dados, de propósito, para não complicar muito a explicação. Você poderá se exercitar colocando outros dados. Para tanto, fizemos uma query envolvendo todas as 4 tabelas do banco.

 

(abaixo, a continuação da grade inferior)

 

Na linha "Criteria" repare no número 1. Nesta consulta estamos particularizando o código do primeiro filme da tabela apenas para montar a sentença da Query centrada no código. Poderia ser qualquer outro código Quando a sentença for transferida para o programa , o número 1 será substituida pela variável "codigo", explicada acima.
Eis a sentença gerada no processo:

 

 

Na transferência desta tabela para o programa é que mora o PERIGO!
É preciso fracionar a sentença em pequenas partes ( com muita atenção e respeitando os espaços em branco) e retirar o "ponto-e-vírgula" do final.
Os parênteses da cláusula WHERE podem ser suprimidos .
Eis como se processa a substituição do número 1 pela variável "codigo":
pssql = pssql & " WHERE tblFilme.CodFilme=" & codigo

Quando tentamos escrever o "Response.Write" em apenas uma sentença, em alguna casos, também tivemos mensagem de erro e colocamos cada "Response" em linhas diferentes.

E o restante do código... o que faz exatamente?

Veja esta sentença:
recCines.Open pssql,conCinema

Simplificadamente, podemos dizer que esta sentença provoca a criação de uma tabela no recordset com os dados da pesquisa feita com base no código do filme.
Lembra-se da linha Criteria da grade de design da query? Pois bem, apenas para gerar a tabela do recordset que deu origem à tela mostrada acima, vou colocar o código 3 em lugar do 1 ( 3 é o código do filme "60 Segundos".
Obtive a seguinte tabela:

 

 

É nesta tabela que o programa vai buscar os dados para, a partir dos comandos dentro do loop DO WHILE, gerar a tela mostrada acima (com as duas outras obtidas por rolagem). Se o filme estivesse sendo exibido em apenas um cinema, esta tabela conteria apenas uma linha.

Atenção : este programa tela100.asp não poderá ser testado individualmente, digitando-se seu endereço no simulador, pois ocorrerá o seguinte erro:

 

 

O motivo é o seguinte: para funcionar, o programa tela100.asp precisa receber o código do filme do programa filme100.asp; testado isoladamente, sem o código, ocorrerá o erro acima; teste-o a partir do hiperlink do programa filme100.asp. Esta observação é valida para o programa tela200.asp.

Na "Parte 3" a seguir veremos o programa tela200.asp que gera a tela do cinema em que é exibido um ou mais filmes.

WirelessBRASIL                 Portal helyoWAP                    Anterior                    Próxima