none
Stored Procedure - Dúvida quanto a Select (Fácil, de iniciante). RRS feed

  • Pergunta

  • Pessoal, Boa noite!

    Estou migrando uma base Firebird para o SQL 2012, e preciso encontrar a sintaxe para a seguinte Stored Procedure:

    CREATE PROCEDURE sp_GetBanco
    @Id varchar(5),
    @ID_BANCO varchar(5) OUTPUT,
    @NOME varchar(50) OUTPUT,
    @SITE varchar(80) OUTPUT
    AS
    BEGIN
    SELECT id_banco, nome, site FROM banco

    WHERE id_banco = @id

    INTO @ID_BANCO, @NOME, @SITE;

    END

    No firebird funciona assim, como faço isso no SQL Server?

    Agradeço antecipadamente.

    quarta-feira, 23 de julho de 2014 21:28

Respostas

  • Boa noite,

    Experimente dessa forma:

    CREATE PROCEDURE sp_GetBanco
        @Id varchar(5),
        @ID_BANCO varchar(5) OUTPUT,
        @NOME varchar(50) OUTPUT,
        @SITE varchar(80) OUTPUT
    AS
    BEGIN
    	SET NOCOUNT ON;
    
    	SELECT @ID_BANCO = Cidadess, @NOME = Nomessss, @SITE = VlStrsss
    	FROM Testesss
    	WHERE CodStrss = @Id
    END
    GO

    Espero que ajude.


    Assinatura: http://www.imoveisemexposicao.com.br

    quarta-feira, 23 de julho de 2014 22:59

Todas as Respostas

  • Boa noite,

    Experimente dessa forma:

    CREATE PROCEDURE sp_GetBanco
        @Id varchar(5),
        @ID_BANCO varchar(5) OUTPUT,
        @NOME varchar(50) OUTPUT,
        @SITE varchar(80) OUTPUT
    AS
    BEGIN
    	SET NOCOUNT ON;
    
    	SELECT @ID_BANCO = Cidadess, @NOME = Nomessss, @SITE = VlStrsss
    	FROM Testesss
    	WHERE CodStrss = @Id
    END
    GO

    Espero que ajude.


    Assinatura: http://www.imoveisemexposicao.com.br

    quarta-feira, 23 de julho de 2014 22:59
  • Deleted
    quinta-feira, 24 de julho de 2014 11:23
  • Zach, a sugestão é que não crie procedimentos armazenados que iniciem com sp_. Nos procedimentos internos do SQL Server "sp_" significa  system stored procedure. Vide Procedimentos armazenados do sistema.

    Evite o uso do prefixo sp_ ao nomear procedimentos. Esse prefixo é usado pelo SQL Server para designar procedimentos de sistema. O uso do prefixo poderá causar a quebra do código do aplicativo se houver um procedimento de sistema com o mesmo nome.
       


        José Diz     Belo Horizonte, MG - Brasil
    (Se encontrou a solução nesta resposta, ou se o conteúdo foi útil, lembre-se de marcá-la)


    Ok, Valeu! Observarei o prefixo.
    quinta-feira, 24 de julho de 2014 12:00
  • Boa noite,

    Experimente dessa forma:

    CREATE PROCEDURE sp_GetBanco
        @Id varchar(5),
        @ID_BANCO varchar(5) OUTPUT,
        @NOME varchar(50) OUTPUT,
        @SITE varchar(80) OUTPUT
    AS
    BEGIN
    	SET NOCOUNT ON;
    
    	SELECT @ID_BANCO = Cidadess, @NOME = Nomessss, @SITE = VlStrsss
    	FROM Testesss
    	WHERE CodStrss = @Id
    END
    GO

    Espero que ajude.


    Assinatura: http://www.imoveisemexposicao.com.br

    Obrigado! Fluiu fácil.
    quinta-feira, 24 de julho de 2014 12:00