![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
crear una llave alfanumerica con un generador
hola bueno tengo una pregunta para hacerles, uso interbase y quiero crear un llave primaria que sea por ej 'EMP' + CODIGO..el codigo deberia ser autoincrementable y lo de adelante seria como un prefijo osea que la la llave seria un conjunto de caracteres..alfanumericos, para esto cree aparte un campo codigo que sea parte de la clave, y le cree un generador de autoincrementable y un trigger para que dispare ese generador antes de insertar. Yo deberia modificar el trigger para que convierte ese codigo generado en caractes..y asignarlo al campo ID principal formado por 'EMP ' + CODIGO. Me podrian decir como hago?...bueno aqui les pongo el triger para ver si esta bien echo tambien ...saludoss
![]() AS BEGIN /* Trigger body */ if (empmovil."autoID" is null) then empmovil."autoID"= gen_id("EMPMOVIL_autoID_GEN", 1); END |
#2
|
|||
|
|||
Usa la función CAST de Interbase:
Esto no lo he probado, pero no te debería dar problemas... Saludos... |
#3
|
|||
|
|||
pregunta de duda
tkss..pero estuve pensando...que pasa si aborto la trasaccion esto se genera =? puedo tener problemas de usar autoincrementables si necesito valores unicos? estos disparadores me parece que no se pueden controlar..o si?
|
#4
|
|||
|
|||
No hay problema de que se te repitan valores usando generadores. El problema vendría que al abortar una transacción tuvieras saltos en tus llaves primarias. Por ejempo: EMP1, EMP2, EMP4, EMP5, EMP6, EMP8.
Saludos... |
![]() |
|
|
![]() |
|