SoloCodigo

Bases de Datos => SQL Server => Mensaje iniciado por: Cajami en Martes 9 de Enero de 2007, 14:32

Título: Procedimientos Almacenados
Publicado por: Cajami en Martes 9 de Enero de 2007, 14:32
hola que tal, alguien me puede ayudar no se mandandome un tutorial para poder crear procedimientos almacenados (en español :D ), porque la verdad busco en inter pero no se como crear procedimientos almacenados con y sin parametros, espero que me puedan ayudar.

ahora una vez creado estos procedimientos como poderlos usar en VB 2005, nos vemos cuidense  :hola:
Título: Re: Procedimientos Almacenados
Publicado por: ElNapster en Martes 9 de Enero de 2007, 16:37
No se de muchos tutoriales pero para enviarle parametros a un sp solo tienes que declar la variable de entrada .... te muestro un pequeño ejemplo con un solo parametro espero que te sea de ayuda...

Create Procedure insertar_parametro_a_tabla
@NOMBRE_ARCHIVO    varchar (40)
As
insert tabla(nombre_archivo
    ,ERRORES   )
Select  @NOMBRE_ARCHIVO
   ,'1'   
Lo ejecutamos
Código: Text
  1. exec insertar_parametro_a_tabla
  2. @nombre_archivo = 'Prueba_ingreso'
  3.  

Lo que estamos haciendo aca es ingresar datos a una tabla enviandole como parametro un nombre....

Espero te sirva
 :comp:
Título: Re: Procedimientos Almacenados
Publicado por: Cajami en Martes 9 de Enero de 2007, 16:51
a que te refieres con Errores, y que quiere decir ese '1'??
Título: Re: Procedimientos Almacenados
Publicado por: ElNapster en Martes 9 de Enero de 2007, 18:05
Es un campo X en la tabla y le estoy asignando un valor X
Título: Re: Procedimientos Almacenados
Publicado por: lencho en Martes 9 de Enero de 2007, 20:08
Adicionar
Citar
CREATE PROCEDURE ADICIONARCLIENTE
@Nit as int, 
@Nombre as varchar(50), 
@Direccion as varchar (30),   
@Email as varchar(30),
@Limcredito as int,
@FonoFijo as int,
@FonoMovil as int,
@estado as bit
AS
insert  TCliente (Nit, Nombre, Direccion, Email, LimCredito, FonoFijo, FonoMovil, Estado)
values ( @Nit ,  @Nombre, @Direccion, @Email, @LimCredito, @FonoFijo, @FonoMovil, @estado)
Buscar
Citar
CREATE Proc BUSCARCLIENTEPORNOMBRE
@Nombre varchar(50)
as
Select CodCliente
From TCliente
Where     Nombre like @Nombre
Modificar
Citar
CREATE PROCEDURE MODIFICARCLIENTE
@CodCliente as int,   
@Nit as int, 
@Nombre as varchar(50), 
@Direccion as varchar (30),   
@Email as varchar(30),
@Limcredito as int,
@FonoFijo as int,
@FonoMovil as int,
@estado as bit
AS
Update TCliente
set Nit = @Nit, Nombre = @Nombre, Direccion = @Direccion, Email = @Email, LimCredito = @LimCredito, FonoFijo = @FonoFijo, FonoMovil= @FonoMovil, Estado= @Estado
where CodCliente = @CodCliente

Estos son algunos ejemplos.

BYTE.
Título: Re: Procedimientos Almacenados
Publicado por: Cajami en Martes 9 de Enero de 2007, 21:29
hola que tal, lo ultimo no comprendo muy bien:

Citar
CREATE PROCEDURE MODIFICARCLIENTE
@CodCliente as int, 
@Nit as int, 
@Nombre as varchar(50), 
@Direccion as varchar (30), 
@Email as varchar(30),
@Limcredito as int,
@FonoFijo as int,
@FonoMovil as int,
@estado as bit
AS
Update TCliente
set Nit = @Nit, Nombre = @Nombre, Direccion = @Direccion, Email = @Email, LimCredito = @LimCredito, FonoFijo = @FonoFijo, FonoMovil= @FonoMovil, Estado= @Estado
where CodCliente = @CodCliente

en el caso del where CodCliente = @CodCliente
Título: Re: Procedimientos Almacenados
Publicado por: Saby en Martes 9 de Enero de 2007, 23:28
Hola chico es tan facil lo quer requieres solo contactame y listo

Te me haces conocido quien eres a ya vi que te mandaron ejemplos ya pudiste????????
Título: Re: Procedimientos Almacenados
Publicado por: Cajami en Martes 9 de Enero de 2007, 23:39
bueno por alli voy haciendole el intento, aunque se que los procedimientos almacenados son mas, por ejemplo, tengo un procedimiento para seleccionar todos los campos y otro para seleccionar los registros que contentan una letra inicial, pero allí van 2 sp, se podra crear un sp que tenga varias opciones digamos de seleccion??
Título: Re: Procedimientos Almacenados
Publicado por: lencho en Miércoles 10 de Enero de 2007, 16:49
Citar
hola que tal, lo ultimo no comprendo muy bien:

QUOTE
CREATE PROCEDURE MODIFICARCLIENTE
@CodCliente as int,
@Nit as int,
@Nombre as varchar(50),
@Direccion as varchar (30),
@Email as varchar(30),
@Limcredito as int,
@FonoFijo as int,
@FonoMovil as int,
@estado as bit
AS
Update TCliente
set Nit = @Nit, Nombre = @Nombre, Direccion = @Direccion, Email = @Email, LimCredito = @LimCredito, FonoFijo = @FonoFijo, FonoMovil= @FonoMovil, Estado= @Estado
where CodCliente = @CodCliente


en el caso del where CodCliente = @CodCliente

puej Modificara el registro con los valores contenidos en todas las variables (aquellas que tienen @ por delante) cuando CodCliente = @CodCliente

Todas las palabras que tienen @ por delante son los valores que vos mandas como parametro para la ejecucion del SP.

BYTE.
Título: Re: Procedimientos Almacenados
Publicado por: Cajami en Miércoles 10 de Enero de 2007, 16:51
hola a ia, pero que pasa si le me equivoco y le mando un codigo diferente, va a ocurrir un error o simplemente no pasa naa?
Título: Re: Procedimientos Almacenados
Publicado por: lencho en Miércoles 10 de Enero de 2007, 16:54
supongamos que en tu tabla el campo CodCliente tiene valores de 1 al 10 m y vos le mandas el valor 11 -.------> NO PASA NADA PORQUE NO SE CUMPLE LA CONDICION, y no pasa ningun error.

BYTE.
Título: Re: Procedimientos Almacenados
Publicado por: Cajami en Jueves 11 de Enero de 2007, 16:11
hola estaba practicnado con los sp y me di cuenta de algo cuando tu pones este sp: (y en todos los ejemplos que has puesto>)

Citar
CREATE PROCEDURE ADICIONARCLIENTE
@Nit as int, 
@Nombre as varchar(50), 
@Direccion as varchar (30), 
@Email as varchar(30),
@Limcredito as int,
@FonoFijo as int,
@FonoMovil as int,
@estado as bit
AS
insert  TCliente (Nit, Nombre, Direccion, Email, LimCredito, FonoFijo, FonoMovil, Estado)
values ( @Nit ,  @Nombre, @Direccion, @Email, @LimCredito, @FonoFijo, @FonoMovil, @estado)

ps me di cuenta de algo, como saber que table es o mejor dicho, me explico mejor, como saber los campos no se deberia hacer primero Select * From LaTabla porque una vez leido los campos recien se pueden guardar, bueno no se si estaré mal espero tu respuesta
Título: Re: Procedimientos Almacenados
Publicado por: Cajami en Jueves 11 de Enero de 2007, 17:59
ia lo entendí, si asi se hace, ia lo probe