Validações de banco

Firebird

12/06/2006

Da galera blz??? Preciso saber duas coisas... Preciso validar 2 dados que o usr digitar na tela...
1) A data: Ela não pode ser uma data futura... Como faço isso por CHECK??
2) O e-mail... Alguem sabe como validar e-mail??
Um abraco!!! E agradeco desde jah!!


Eduarno

Eduarno

Curtidas 0

Respostas

Eduarno

Eduarno

12/06/2006

Dae mocada.. consegui essa função do sql server que faz a validacao de email... so q no firebird tem algumas funções (ex: charindex) q naum dao certo :(... alguem sabe funcoes similares do firebird??
CREATE FUNCTION EMAILVALIDATE (@email varChar(100))
RETURNS int
AS
BEGIN
DECLARE @invalChars varchar(5),@valid int,@badChar varchar(1),@atPos
int,@periodPos int
SET @valid = 1
SET @invalChars = ´ /:,;´
--Check to see if it´s blank
IF len(ltrim(rtrim(@email))) = 0
SET @valid = 0
ELSE
--Loop invalid characters to see if it exists in email
WHILE len(@invalChars) > 0
BEGIN
SET @badChar = substring(@invalChars,1,1)
IF(charindex(@badChar,@email) > 0)
--If invalid character was found, return 0 to invalidate
SET @valid = 0
SET @invalChars = replace(@invalChars,@badChar,´´)
END
--Check to see if ´@´ exists.
SET @atPos = charindex(´@´,@email,1)
IF @atPos = 0
SET @valid = 0
--Check to see if extra ´@´ exists after 1st ´@´.
IF charindex(´@´,@email,@atPos+1) > 0
SET @valid = 0
SET @periodPos = charindex(´.´,@email,@atPos)
IF @periodPos = 0
SET @valid = 0
IF (@periodPos+3) > len(@email)
SET @valid = 0
RETURN (@valid)
END


GOSTEI 0
POSTAR