• Jueves 28 de Marzo de 2024, 10:00

Autor Tema:  Ayuda Con Store Procedures En Sql Y Visual Basic  (Leído 2660 veces)

m@gnus

  • Miembro activo
  • **
  • Mensajes: 25
    • Ver Perfil
Ayuda Con Store Procedures En Sql Y Visual Basic
« en: Domingo 14 de Noviembre de 2004, 08:30 »
0
Primeo que nada saludos y mi pregunta es la siguiente, agradeciendoles de antemano sus respuestas.


lo que pasa es que cree un procedimiento en sql server 2000 y es el siguiente:




Alter Procedure insertarpaquete
(
@Cve_Paquete int,
@Nom_Paquete char (35)
)
As
if (select count(*) from paquete where Cve_paquete=@Cve_Paquete)<1
begin
insert into Paquete
(
Cve_Paquete,
Nom_Paquete
)
values
(@Cve_Paquete,
@Nom_Paquete)
end
return  @@rowcount



y retorno un valor del numero de columnas que he modificado si es 0 es que el valor de la llave primaria estaba duplicado y no se realizo ninguna inserion  si me retorna un uno es que la insercion fue satisfactoria,esto con el fin de saber desde visual basic si se ha insertado correctamente , pero no se como capturar el valor que retorno(@@rowcount ) desde visual basic.


En visual basic executo las siguientes instrucciones:

CBtis.Commands(1).Parameters(1).Value = Me.Text1.Text
CBtis.Commands(1).Parameters(2).Value = Me.Text2.Text
CBtis.Commands(1).Execute


y con esto se ejecuta mi insercion, pero como se que valor retorna? @@rowcount

Brroz

  • Miembro de PLATA
  • *****
  • Mensajes: 1058
    • Ver Perfil
Re: Ayuda Con Store Procedures En Sql Y Visual Basic
« Respuesta #1 en: Lunes 15 de Noviembre de 2004, 17:54 »
0
Hola m@gnus.

A lo mejor es una gambada..., pero prueba declarando un objeto de tipo recordset e inicializándolo con el resultado del 'Execute'.
Código: Text
  1.  
  2. Dim rs1 as ADODB.Recordset
  3. Set rs1 = CBtis.Commands(1).Execute()
  4.  
  5.  
Intenta luego recuperar los valores del primer registro.

Chao.

m@gnus

  • Miembro activo
  • **
  • Mensajes: 25
    • Ver Perfil
Re: Ayuda Con Store Procedures En Sql Y Visual Basic
« Respuesta #2 en: Martes 16 de Noviembre de 2004, 17:02 »
0
Primero que nada te agradezco que respondas, a mi pregunta, pero dejame decirte que no sirve ya que cuando se declara una variable de tipo recordset, esta se utiliza en un consulta(cuando se utiliza el select)o cuando alguna ejecucion regresa un conjunto de valores, ya que en este se almacenan todos los campos que resultan de la consulta, pero en el caso de la insercion no regresa ningun tipo de valor o datos.



Pero paraece que ya se como solucionar el problema, de todos modos agradezco tu respuesta.


Saludos.

Atte

   M@GNUS

Loquillo

  • Nuevo Miembro
  • *
  • Mensajes: 13
    • Ver Perfil
Re: Ayuda Con Store Procedures En Sql Y Visual Basic
« Respuesta #3 en: Martes 16 de Noviembre de 2004, 18:19 »
0
Utiliza un QueryDef para ejecutar tu Store Procedure, al cual le envias un parametro mediante la funcion call
Set xx = conexion.CreateQueryDef("", {?=call (Store Procedure)})
luego cambia la dirección del parametro.

Al ejecutar el querydef, asignandolo a un recordset, no importará si este último tiene o no información, lo importante es que en tu parametro ya estará el valor que deseas. :hola:
Darwin Alvarado Marin
darwin_alvarado@hotmail.com