
[Ayuda] Procedimiento Almacenado
Publicado por pablo (3 intervenciones) el 02/03/2016 03:08:48
Hola, estoy intentando crear procedimientos en MySQL y se me esta haciendo una tortura, llevo como media hora viendo ejemplos y ninguno me funciona, la tabla es la siguiente:
El objetivo es crear una procedimiento para poder insertar usuarios, poder manejar transacciones como lo hago comunmente en Oracle, pero MySQL me mato, no me dejo hacer ni un procedimiento común
mi intento fue este:
Alguien con un poco de experiencia en MySQL me dice donde esta el error? y como haría si quiero hacer de este procedimiento una transacción? vi que simplemente se pone un "start transaction" y un "commit" al final
Otra cosa, conviene crear procedimientos almacenados con transacciones? siempre lo hice por un hecho de seguridad, y ahorro de código, pero soy nuevo en MySQL.
Saludos y gracias de antemano!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
create table usuario
(
idUsuario int auto_increment,
nick varchar(20) not null,
contra varchar(20) not null,
nombre varchar(20),
apellido varchar(20),
mail varchar(40) not null,
pais varchar(20),
fechaRegistro datetime not null,
tipo int not null,
ciudad varchar(30),
puntaje numeric(2,2) not null,
primary key (idUser)
);
El objetivo es crear una procedimiento para poder insertar usuarios, poder manejar transacciones como lo hago comunmente en Oracle, pero MySQL me mato, no me dejo hacer ni un procedimiento común
mi intento fue este:
1
2
3
4
5
create procedure insertarUsuario(in nick varchar(20), in contra varchar(100), in mail varchar(40), in pais varchar(20))
BEGIN
insert into usuario (nick, contra, mail, pais, fechaRegistro, tipo, puntaje)
values (nick, contra, mail, pais, sysdate(), 0, 0.0);
end;
Alguien con un poco de experiencia en MySQL me dice donde esta el error? y como haría si quiero hacer de este procedimiento una transacción? vi que simplemente se pone un "start transaction" y un "commit" al final
Otra cosa, conviene crear procedimientos almacenados con transacciones? siempre lo hice por un hecho de seguridad, y ahorro de código, pero soy nuevo en MySQL.
Saludos y gracias de antemano!
Valora esta pregunta


0