PDA

Ver la Versión Completa : Firebird ¿como generar numero aleatorios cadenas de texto7 alfanumericas aleatorias?


JXJ
10-11-2014, 05:01:16
Firebird ¿como generar numero aleatorios cadenas de texto7 alfanumericas aleatorias?

La intencion es hacer un estoreprocedure que regrese un GUID

para usarlo en otro stored procedure

algo asi. y
00000004-f827-452b-a3be-b77a3a4c95aa

y si se necesitase que sea solo numeros, caracteres de la a..z A..Z combinados


NO se me ocurre como poder hacerlo..

gracias.

duilioisola
10-11-2014, 09:40:28
A partir de Firebird 2.1 tienes una función que te devuelve uno de esos valores: gen_uuid

http://www.firebirdsql.org/refdocs/langrefupd25-intfunc-gen_uuid.html

select gen_uuid() from rdb$database
-- returns e.g. 017347BFE212B2479C00FA4323B36320 (16-byte string)

Luego puedes visutalizarlo con: uuid_to_char

http://www.firebirdsql.org/refdocs/langrefupd25-intfunc-uuid_to_char.html
select uuid_to_char(x'876C45F4569B320DBCB4735AC3509E5F') from rdb$database
-- returns '876C45F4-569B-320D-BCB4-735AC3509E5F'

select uuid_to_char(gen_uuid()) from rdb$database
-- returns e.g. '680D946B-45FF-DB4E-B103-BB5711529B86'

select uuid_to_char('Firebird swings!') from rdb$database
-- returns '46697265-6269-7264-2073-77696E677321'

JXJ
10-11-2014, 21:22:06
graxcias duiloisola pero
tengo firebird 1.5 y me interesa poder hacer el GUID. con pl sql

sigo buscando como ?

juanelo
10-11-2014, 23:28:19
Pues a mi solo se me ocurre con una UDF.