Ver Mensaje Individual
  #3 (permalink)  
Antiguo 08/04/2012, 09:05
losaltlv
 
Fecha de Ingreso: abril-2012
Ubicación: surquillo
Mensajes: 44
Antigüedad: 12 años
Puntos: 0
Respuesta: problema con mysql crear un procedimiento

hola amigo gracias x responderme pero es que el problema es q yo recien estoy aprendiendo mysql y oracle ya q sql ya se pero no se mucho de mysql y oracle el codigo que qiero hacer es pasar mi codigo genereador d codigos de sql a mysql jeje pero me salen errores en las sintaxis q colera


este es el codigo en sql

CREATE TABLE generador (Parametro varchar(40)primary key,
numero int)
go
el nombre producto cliente etc son lso nombres de las tablas y estas seran contadas desde 0 tbm sirve como un contador para ver cuentos datos tenemso insertados en las tablas
insert into generador values('producto',0)
insert into generador values('cliente',0)
insert into generador values('usuarios',0)
insert into generador values('marca',0)
insert into generador values('natural',0)
insert into generador values('juridico',0)
insert into generador values('00000000',0)
insert into generador values('boleta',0)

select * from generador

delete from generador


CREATE PROCEDURE SPGENERADOR
@PARAM VARCHAR(40),
@CODGEN VARCHAR(8) OUTPUT
AS
DECLARE @CEROS INT,@ULT INT
SELECT @ULT = numero + 1 FROM GENERADOR WHERE PARAMETRO = @PARAM
SET @CEROS = 3 - LEN(CONVERT(VARCHAR,@ULT))
SET @CODGEN = LEFT(@PARAM,5) + REPLICATE('0',@CEROS) + CONVERT(VARCHAR,@ULT)
UPDATE GENERADOR SET numero = @ULT WHERE PARAMETRO = @PARAM
GO

y asi lo ejecuto

create proc SP_NueUsu
@codUsu varchar(8)output,
@acc varchar(20),
@id varchar(20),
@pass varchar(20)
as
begin
declare @XCOD varchar(8)
EXECUTE SPGENERADOR 'usuarios',@XCOD OUTPUT
SET @codUsu= @XCOD
INSERT INTO usuarios VALUES(@codUsu,@acc,@id,@pass)
END
espero su ayuda :)

Última edición por losaltlv; 08/04/2012 a las 10:18