Apostila de Asp - PARTE 6


O comando While...Wend executa uma determinada rotina até que a condição imposta 
seja alcançada. Observe o exemplo dado: 

<html><body> 
<% 
q = "SELECT * FROM cadastro where cidade = 'São Paulo'" 
connstring = "DBQ=c:\teste.mdb;Driver={Microsoft Access Driver (*.mdb)}"  
Set Conexao = Server.CreateObject("ADODB.Connection") 
Conexao.Open connstring, "",""  
Set tabela = Conexao.Execute (q)  
While not tabela.EOF 
response.write tabela("nome").value 
wend  
%></body></html> 
Rotinas de Loop 

Loops são rotinas que devem ser repetidas até que uma determinada condição seja 
satisfeita. Existem 3 comandos que permitem tal situação: 
  
Abaixo seguem as características e exemplos de cada comando. 

Do...Loop 

O comando Do...Loop executa uma determinada rotina até que a condição se torne 
verdadeira. Observe o exemplo abaixo:  

<html><body> 
<%  
x = 0 
Do Until x=10 
x = x + 1 
Loop  
response.write x 
%></body></html> 

para interromper o Loop, usa-se o comando Exit Do 
   
For...Next 
O comando For...Next executa uma determinada rotina até que o contador (uma variável) 
atinja o valor determinado. Observe o exemplo: 

<html><body> 
<% 
For i=1 to 50 
response.write i 
next  
%></body></html> 
observe que não é necessário nenhuma rotina de incrementação de valores em i. A 
cada ciclo, o valor de i é acrescido de uma unidade, automaticamente.  
Apostila ASP    26 de 43 
Apostilas e Tutotriais: http://Apostilas.Fok.com.br 
para interromper o Loop, usa-se o comando Exit For  

While...Wend 

O comando While...Wend executa uma determinada rotina até que a condição imposta  
seja alcançada. Observe o exemplo dado: 

<html><body> 
<% 
q = "SELECT * FROM cadastro where cidade = 'São Paulo'" 
connstring = "DBQ=c:\teste.mdb;Driver={Microsoft Access Driver (*.mdb)}"  
Set Conexao = Server.CreateObject("ADODB.Connection") 
Conexao.Open connstring, "",""  
Set tabela = Conexao.Execute (q)  
While not tabela.EOF 
response.write tabela("nome").value 
wend  
%></body></html> 
Rotinas de Loop 

Loops são rotinas que devem ser repetidas até que uma determinada condição seja 
satisfeita. Existem 3 comandos que permitem tal situação: 
   
Abaixo seguem as características e exemplos de cada comando. 

Do...Loop 

O comando Do...Loop executa uma determinada rotina até que a condição se torne 
verdadeira. Observe o exemplo abaixo:  

<html><body> 
<%  
x = 0 
Do Until x=10 
x = x + 1 
Loop  
response.write x 
%></body></html> 

para interromper o Loop, usa-se o comando Exit Do 
  
For...Next 

O comando For...Next executa uma determinada rotina até que o contador (uma variável) 
atinja o valor determinado. Observe o exemplo: 

<html><body> 
<% 
For i=1 to 50 
Apostila ASP    27 de 43 
Apostilas e Tutotriais: http://Apostilas.Fok.com.br 
response.write i 
next  
%></body></html> 
observe que não é necessário nenhuma rotina de incrementação de valores em i. A 
cada ciclo, o valor de i é acrescido de uma unidade, automaticamente.  

para interromper o Loop, usa-se o comando Exit For  

While...Wend 

O comando While...Wend executa uma determinada rotina até que a condição imposta 
seja alcançada. Observe o exemplo dado: 

<html><body> 
<% 
q = "SELECT * FROM cadastro where cidade = 'São Paulo'" 
connstring = "DBQ=c:\teste.mdb;Driver={Microsoft Access Driver (*.mdb)}"  
Set Conexao = Server.CreateObject("ADODB.Connection") 
Conexao.Open connstring, "",""  
Set tabela = Conexao.Execute (q)  
While not tabela.EOF 
response.write tabela("nome").value 
wend  
%></body></html> 
  
Tipos de Dados 
  
O VBScript contém apenas um tipo de variável, denominado Variant. O tipo variant pode 
armazenar qualquer tipo de dado, e de acordo com o tipo de dados que é armazenado, é 
possível classifica-lo de acordo com os subtipos de dados, abaixo relacionados: 

Subtipo  Descrição 
Empty  Variável que contém 0 para valores numéricos e "" (string 
vazia) para strings. 
Null  Variável que não contém dado algum. 
Boolean  Contém True ou False 
Byte  Números inteiros entre 0 e 255 
Integer  Números inteiros no intervalo de -32,768 a 32,767.  
Long  Números inteiros no intervalo de -2,147,483,648 a 
2,147,483,647. 
Single 
Números com ponto flutuante de precisão simples na faixa de -
3.402823E38 a -1.401298E-45 para números negativos e 
1.401298E-45 a 3.402823E38 para números positivos. 
Double 
Números com ponto flutuante de dupla precisão na faixa de -
1.79769313486232E308 a -4.94065645841247E-324 para 
números negativos e 4.94065645841247E-324 a 
1.79769313486232E308 para números positivos.  
Date  Dados no formato de Data (data e tempo) na faixa de 1 de 
Apostila ASP    28 de 43 
Apostilas e Tutotriais: http://Apostilas.Fok.com.br 
(Time)  janeiro de 100 a 31 de dezembro de 999. (January 1, 100 a 
December 31, 9999). 
String  Contém dados no formato de string, que podem ter até 
aproximadamente 2 bilhões de caracteres de tamanho. 

PS: é possível a conversão de dados de um tipo para outro, mas para isso, os dados 
devem ser compatíveis com o subtipo desejado, ou seja, a String "23/5/99" pode ser 
convertida para o subtipo Date, e vice-versa. Mas a String "ASPBRASIL" não pode. 
É importante a conversão de tipos de dados uma vez que o modo como os dados serão 
manipulados dependem do seu subtipo. 


Convertendo Dados 

Verificando e Convertendo Tipos de Dados A linguagem VBScript contém algumas 
funções de verificação e conversão de tipos de dados importantes para a melhor 
manipulação dos dados. 
As funções de verificação são importantes na hora de detectar se os dados contidos 
numa variável são compatíveis com o subtipo para o qual se deseja converter estes 
dados. 
As funções de conversão fazem a conversão de dados de um subtipo para outro, mas 
para isso, é necessário que esses dados sejam compatíveis com o subtipo que se deseja 
obter. 

Funções de Verificação 

IsArray - IsDate - IsEmpty - IsNull - IsNumeric  

Funções de Conversão 

CBool - CByte - CDate - CDbl - CInt - CLng - CStr - CSng  
  IsArray 
-

retorna 
True 
caso 
a

variável 
seja  um 
array, 
caso 
contrário, 
retorna 
False. 

sintaxe: IsArray(nomedavariavel) 

<% 
Dim aspbrasil 
Dim Arraybrasil(5) 
response.write IsArray(aspbrasil) 'retorna false 
response.write IsArray(Arraybrasil) 'retorna true 
%>  
  IsDate 
-

retorna True 
caso 
o

valor 
da 
variável 
possa 
ser 
convertido 
em 
data, 
caso 
contrário, retorna False. 

sintaxe: IsDate(nomedavariavel) 

<% 
aspbrasil = "23/5/99" 
aspbrasil2 = "ASPBRASIL" 
Apostila ASP    29 de 43 
Apostilas e Tutotriais: http://Apostilas.Fok.com.br 
response.write IsDate(aspbrasil) 'retorna true 
response.write IsDate(aspbrasil2) 'retorna false 
%>  
  IsEmpty 
-

retorna 
True 
caso 
a

variável 
contenha 
o

valor 
0

ou 
"", 
caso 
contrário, 
retorna  
False. 

sintaxe: IsEmpty(nomedavariavel) 

<% 
aspbrasil = "" 
aspbrasil2 = 0 
aspbrasil3 = "ASPBRASIL" 
response.write IsEmpty(aspbrasil) 'retorna true 
response.write IsEmpty(aspbrasil2) 'retorna true 
response.write IsEmpty(aspbrasil3) 'retorna false 
%>  

IsNull - retorna True caso a variável não contenha dados válidos.  

sintaxe: IsNull(nomedavariavel) 

<% 
aspbrasil = "23/5/99"  
response.write IsNull(aspbrasil) 'retorna false 
%>  

IsNumeric - retorna True caso o valor da variável possa ser convertido para algum tipo de 
dados numéricos. 

* A conversão de tipo de dados numéricos entre si, ou seja, de um número Double para o 
formato Sng pode acarretar a perda de dados, ou mesmo, podem ser imcompatíveis, uma 
vez que existem faixas de atuação para cada tipo de dado. 

sintaxe: IsNumeric(nomedavariavel)  

<% 
aspbrasil = "23" 
aspbrasil2 = 56  
response.write IsNumeric(aspbrasil) 'retorna true 
response.write IsNumeric(aspbrasil2) 'retorna true 
%>  

CBool - retorna True ou False (0 ou 1), de acordo com a expressão analisada ou com o 
valor da variável. 

sintaxe: CBool(nomedavariavel ou expressão) 

<% 
aspbrasil = 5 
aspbrasil2 = 5 
aspbrasil3 = 0 
Apostila ASP    30 de 43 
Apostilas e Tutotriais: http://Apostilas.Fok.com.br 
response.write CBool(aspbrasil = aspbrasil2) 'retorna true 
response.write CBoll(aspbrasil3) 'retorna false 
%>  


Comentários