Fórum Stored Procedure com Filtro #52443
24/08/2005
0
Tenho a seguinte Stored Procedure:
CREATE PROCEDURE retrna_compania
(
PUF VARCHAR(2)
)
RETURNS (
COD INTEGER,
NOME VARCHAR(10),
UF VARCHAR(2)
)
AS
BEGIN
FOR
SELECT COD, NOME, UF
FROM COMPANIA
INTO :COD, :NOME, :UF
DO
SUSPEND;
END
Como modifico essa SP para que se o parametro ´PUF´ nao estiver vazio ele adiciona um filtro no select como : ´WHERE UF = :PUF´ ??
Tentei colocar:
IF (PUF <> ´´) THEN
WHERE UF = :PUF
Mas nao funcionou. Como faço ?? Obrigado
Fredy992
Curtir tópico
+ 0Posts
24/08/2005
Sremulador
if campo is null then begin
....
....
end else begin
....
....
end
se alguem tiver uma solução melhor estamos ai...
Gostei + 0
24/08/2005
Fredy992
CREATE PROCEDURE retrna_compania
(
PUF VARCHAR(2)
)
RETURNS (
COD INTEGER,
NOME VARCHAR(10),
UF VARCHAR(2)
)
AS
BEGIN
IF (PUF <> ´´) THEN
BEGIN
FOR
SELECT COD, NOME, UF
FROM COMPANIA
WHERE UF = :PUF
INTO :COD, :NOME, :UF
DO
END ELSE
BEGIN
FOR
SELECT COD, NOME, UF
FROM COMPANIA
INTO :COD, :NOME, :UF
DO
END;
SUSPEND;
END
Gostei + 0
26/08/2005
Starfox
AS
BEGIN
FOR
SELECT COD, NOME, UF
FROM COMPANIA
INTO :COD, :NOME, :UF
WHERE (:PUF IS NULL OR (UF = :PUF))
DO
SUSPEND;
END
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)