+39 339 8585151
info@easytarg.com
skip to the main content area of this page
I Ferri del Mestiere
 

Generare ID Random


Generare ID Random

Per testare le prestazione delle query occorre avere le tabelle "cariche di dati". Per popolare le tabelle, può essere utile generare identificativi random.

Le funzioni riportate nello script seguente, servono rispettivamente per generare numeri interi casuali in un certo range, e per generare stringhe contenenti pseudo-identificativi di lunghezza variabile.

Ora, la domanda sorge spontanea: perchè implementare un gereratore di numeri random visto che esiste la funzione di sistema RAND()?
La risposta potrà sembrare banale, ma un generatore di identificativi, per essere comodo da usare, deve essere implementato come User Function... purtroppo SQL Server non consente di utilizzare RAND() all'interno di una User Function!

La funzione ETfRandom non è in grado di generare sequenze "perfettamente casuali", ma sufficentemente buone per i nostri scopi.

Se non viene specificato il parametro @RandLen nella funzione ETfGenRandomID, verrà generato un identificato di lunghezza variabile tra 4 e 16 caratteri.

Il generatore si basa su due stringhe, una per le consonanti ed una per le vocali e genera sillabe "leggibili".
Ovviamente è possibile cambiare le stringhe per ottenere identificativi di tipo diverso...

Di seguito riporto una sequenza di ID generati chiamando
dbo.[ETfGenRandomID](N'ID_', N'', NULL):
  ID_CESEFABUTOPILE
  ID_CADE
  ID_MIROVU
  ID_FALECISAZO
  ID_FEDICE
  ID_LADUZOSINEGA
  ID_BAFE
  ID_POTUBA
  ID_GEBIDIBAZANI
  ID_SEFACUVORILEDA





Tutte le Utility