Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Rodrigo Miss

Procedure no SQL Server

Recommended Posts

Ola pessoal, boa tarde!!!!

 

 

seguinte tenho uma procedure dentro do Banco SQL Server

 

 

CREATE PROCEDURE InsereDados@Nome varchar(50),@CPF char(11),@Endereco varchar(50),@Idade intASINSERT INTO USUARIOS(NomeUsuario, CpfUsuario, EnderecoUsuario, IdadeUsuario)Values(@Nome, @CPF, @Endereco, @Idade)Go

 

como eu faria pra xamar essa procedure no delphi e efetuar a passagem dos parametros???

 

vlw ....

aguardo contato

Compartilhar este post


Link para o post
Compartilhar em outros sites

with ADOStoredProcLogar do Begin	  close;	  ADOStoredProcLogar.ProcedureName:='sp_user_login';	  Parameters.Clear;	  Parameters.CreateParameter('@User_Name_In',ftString,pdInput,255,0);	  Parameters.CreateParameter('@Password_In',ftString,pdInput,255,0);	  Parameters.ParamByName('@User_Name_In').Value:=edtUser.Text;	  Parameters.ParamByName('@Password_In').Value:=edtPass.Text;	  Active:=True;	  ExecProc;	  Login_Result:=ADOStoredProcLogar.FieldValues['Login_Result'];	  User_ID:=ADOStoredProcLogar.FieldValues['User_ID'];	  System_Part:=ADOStoredProcLogar.FieldValues['System_Part'];end

só que no meu exemplo a minha sp faz um select...

o seu faz insert...

entao o seu código só vai até a parte execproc...

Compartilhar este post


Link para o post
Compartilhar em outros sites

ôhw kra ... vlw hein .... eu tava tentando passar os parametros usando um ADOQuery hgehehhe ...no momento era so curiosidade msm kra ... pois ate agora naum descobri quais sao as vantagens de c usar uma procedure no banco de dados .....vlw ...teh

Compartilhar este post


Link para o post
Compartilhar em outros sites

Duas principais vantagens são:

 

- Aumento enorme de Velocidade...

 

- Confiabilidade maior dos dados gravados...

 

 

 

Faz o teste aew...

 

gera uma aplicaçãozinha pra gravar 1.000.000 de registros via SP e depois faz com Table e depois com Query... veja a diferença você mesmo!!! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara me da um help ai... veja minha procedure, preciso pegar o valor do id gerado por ela,

mais não estou conseguindo, grava, mais da o erro ao tentar pegar o parametro de retorno:

 

procedure

 

CREATE  procedure [dbo].[PDI_VENDAPOS_SAVE](
	@COD_LOJA INT=NULL,
	@IDPOS NVARCHAR(50)=NULL,
	@DATA_VENDA DATETIME,
	@HORA_VENDA DATETIME,
	@COD_PROD INT=NULL,
	@COD_ING  INT=NULL,
	@VALOR FLOAT=NULL,
	@QNT FLOAT=NULL,
	@SUBTOT FLOAT=NULL,
	@TOTAL FLOAT=NULL,
	@CANCELADO INT
)
AS
BEGIN
   Declare @COD_RET int
   INSERT INTO  VENDASPOS (COD_LOJA, IDPOS, DATA_VENDA, HORA_VENDA, COD_PROD,COD_ING,  VALOR, QNT, SUBTOT, TOTAL, CANCELADO)
   VALUES (@COD_LOJA, @IDPOS, @DATA_VENDA, @HORA_VENDA, @COD_PROD, @COD_ING, @VALOR, @QNT, @SUBTOT, @TOTAL, @CANCELADO)
   set @COD_RET = SCOPE_IDENTITY()
END
GO

no delphi

 

cAdoProc := TADOStoredProc.Create(Owner);
 cAdoProc.Connection := cAdoCon;
 cAdoProc.ProcedureName := 'PDI_VENDAPOS_SAVE';
 cAdoProc.Parameters.Refresh;

 cAdoProc.Parameters.ParamByName('@COD_LOJA').Value := xCodLoja;
 cAdoProc.Parameters.ParamByName('@IDPOS').Value := idPos;
 cAdoProc.Parameters.ParamByName('@DATA_VENDA').Value := Date();
 cAdoProc.Parameters.ParamByName('@HORA_VENDA').Value := Time();
 cAdoProc.Parameters.ParamByName('@COD_PROD').Value := xCodProd;
 cAdoProc.Parameters.ParamByName('@COD_ING').Value := CodIng;
 cAdoProc.Parameters.ParamByName('@VALOR').Value := xValorProd;
 cAdoProc.Parameters.ParamByName('@QNT').Value := Qnt;
 cAdoProc.Parameters.ParamByName('@SUBTOT').Value := xValorProd * StrToInt(Qnt);
 cAdoProc.Parameters.ParamByName('@TOTAL').Value := xValorProd * StrToInt(Qnt);
 cAdoProc.Parameters.ParamByName('@CANCELADO').Value := 0;
 cAdoProc.ExecProc;
 xCodRet := cAdoProc.FieldValues['@COD_RET'];

jah tentei com Parameters.ParaValue[...] e nada tb

sempre da erro..

 

da um help ae!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.