![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Procedimiento almacenado desde Delphi
Hola a todos,
Como puedo llamar a un procedimiento almacenado desde delphi, estoy usando ADO. El codigo del procedure es:
|
#2
|
|||
|
|||
SP desde Delphi
Hola:
Para llamar un SP desde Delphi debes hacer lo siguiente tienes que poner un ADOStoredProcedure en el formulario realizar la conexion con la BD y buscar el nombre del procedimiento en la propiedad procedurename y despues usar el siguiente codigo Código:
with Insertar do begin Parameters.ParamByName('@cat_name').Value:= editcatname.Text; Parameters.ParamByName('@cat_description').Value:= editcatname.Text; Prepared:= True; ExecProc; end; Luis Garcia |
#3
|
|||
|
|||
Gracias por tu ayuda,
Hice lo que me dijiste, pero me sale un error: Insertar: Paramater '@cat_name' not found Gracias nuevamente Uso SQLServer 2000 |
#4
|
|||
|
|||
Ya esta solucionado,
Lo q pasa es que el componente hacia referencia a otro SP jejej Gracias Y como seria el codigo para recibir un parametro de salida, ejemplo q me devuelva el codigo de la categoria. Última edición por hmv fecha: 28-10-2006 a las 18:29:59. |
#5
|
||||
|
||||
![]() En delphi, ademas de crear una instancia del procedimiento almacenado para ejecutarlo, existe alguna otra?
Lo pregunto por que deseo solo llamar al procedimiento sin tener la necesidad de crear una instancia ADOStoreProcedure de antemano agradezco su apoyo |
#6
|
||||
|
||||
dudas proc
Hola de nuevo, espero contar con su apoyo:
tengo un proc almacenado llamado Calcular que recibe un parametro entero > ALTER procedure CALCULAR @folio int cuando lo ejecuto desde el analizador de consultas de SQL todo correcto. > Execute Calcular 103 --asi llamo Pero cuando quiero ejecuar desde Delphi me aparece que el campo no lo encuentra: "StoredProc:Parameter '@folio' not found" He intentado de varias formas, agregue el TstoredProc y el folio lo tomo de un Tedit: try StoredProc.DatabaseName:='nomDB'; StoredProc.StoredProcName:='Calcular'; //storedProc.Params.ParamByName('@folio').AsInteger:=StrToInt(Folio.Text); //storedProc.Params.ParamByName('folio').AsInteger:=StrToInt(Folio.Text); //storedProc.ParamByName('@folio').AsInteger:=StrToInt(Folio.Text); //storedProc.ParamByName('@folio').Value:=StrToInt(Folio.Text); //storedProc.ParamByName('@folio').Value:=Folio.Text; //storedProc.ParamByName('folio').Value:=Folio.Text; //storedProc.Params.ParamByName('@folio').Value:=Folio.Text; //storedProc.Params.ParamValues['@folio']:=Folio.Text; storedProc.Params.ParamValues[Folio.Text]; storedProc.Prepared:=true; storedProc.ExecProc; Finally storedProc.Free; end; Entiendo que el parametro lo tengo que enviar de alguna de estas maneras pero coloque lo que coloque aparece siempre esa leyenda. supongo que me falta hacer algo pero no tengo idea que. uso la version SQL 8.0 y borlanddelphi 7.0 gracias x su apoyo |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
insertar desde un procedimiento almacenado | Gabriel2 | Firebird e Interbase | 5 | 28-10-2005 17:48:29 |
Desactivar trigger desde procedimiento almacenado | oliverinf | Firebird e Interbase | 5 | 09-10-2004 16:17:45 |
Crear un proceso almacenado desde Delphi | chemoide | Firebird e Interbase | 1 | 09-09-2004 13:41:05 |
Procedimiento Almacenado | Ulises | Providers | 3 | 30-01-2004 18:14:58 |
Como Ejecutar Un Query Desde Un Procedimiento Almacenado | multisof | Firebird e Interbase | 2 | 04-11-2003 06:15:28 |
![]() |
|