helyoWAP |
|
PÁGINAS
WML GERADAS DINAMICAMENTE EM AMBIENTE ASP |
Autores: Helio Fonseca Rosa e Andrea de Mello Rosa
Esta página contém 2 figuras grandes. Aguarde a carga se a conexão estiver lenta.
SQL - Structured Query Language
SQL é uma linguagem usada para
consultar, atualizar e gerenciar bancos de dados relacionais, como o Microsoft
Access, Visual Basic, etc.
Os próximos programas mostrarão um pouco desta linguagem.
Na listagem baixo, adaptada do programa banco3.asp, a tabela
que contém os dados a serem consultados está armazenada na variável
recProducts (recordset, lembra-se?), que é organizada de um modo especial,
seguindo as instruções contidas na sentença SQL .
A sentença é : "Select ProductName, SupplierID FROM
Products
ORDER BY ProductName" . Sua "tradução"
é a seguinte : Selecione os campos "Nome do Produto" e
"Fornecedor" (Supplier) ordenados segundo o "Nome do
Produto".
Programa bancow6.asp
<%
Response.ContentType = "text/vnd.wap.wml"
%>
<?xml version="1.0"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
" http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card>
<p>
***** HELYOWAP *****<br/>
**ACCESS/NORTHWIND**<br/>
<%
DIM conNorthwind
DIM recProducts
const cntCaminho = "c:\inetpub\wwwroot\asp\northwind.mdb"
Set conNorthwind = Server.CreateObject("ADODB.Connection")
Set recProducts = Server.CreateObject("ADODB.Recordset")
conNorthwind.Open "driver={Microsoft Access Driver (*.mdb)};dbq="
& cntCaminho
recProducts.Open "Select ProductName, SupplierID FROM
Products
ORDER BY ProductName",conNorthwind
Do While Not RecProducts.Eof
Response.Write recProducts.Fields("ProductName") & " "
&
recProducts.Fields("SupplierID") & "<br/>"
recProducts.MoveNext
Loop
recProducts.Close
conNorthwind.Close
%>
</p>
</card>
</wml>
A sentença SQL deve ser
armazenada em uma variável ( pssql, por exemplo ) e a abertura da tabela deve
ser fracionada como:
pssql = "Select ProductName,"
pssql = pssql & "SupplierID FROM Products "
pssql = pssql & "ORDER BY ProductName"
recProducts.Open pssql,conNorthwind
Fique atento : na realidade,
sempre que tentei colocar uma sentença SELECT de maior comprimento em uma única
linha, ocorreu erro de execução, solucionado com um simples fracionamento como
acima. O erro foi indicado na janela "Phone Information", associada ao
simulador ( uma boa regra parece ser não exceder o tamanho normal de uma linha
do Notepad, por exemplo).
A relação ordenada dos produtos pode ser vista parcialmente nas duas telas abaixo (a segunda obtida por rolagem) :