Una tabella per la quale non ho il controllo dello schema, contiene una colonna definita come varchar (50) che memorizza identificatori univoci nel formato "a89b1acd95016ae6b9c8aabb07da2010" (senza trattini)
Voglio convertirli in identificatori univoci in SQL per passare a un .Net Guid. Tuttavia, le seguenti righe di query non funzionano per me:
select cast('a89b1acd95016ae6b9c8aabb07da2010' as uniqueidentifier)
select convert(uniqueidentifier, 'a89b1acd95016ae6b9c8aabb07da2010')
e risultato in:
Msg 8169, livello 16, stato 2, riga 1 Conversione non riuscita durante la conversione da una stringa di caratteri a uniqueidentifier.
Le stesse query che utilizzano un identificatore univoco con trattino funzionano bene ma i dati non vengono memorizzati in quel formato.
Esiste un altro modo (efficiente) per convertire queste stringhe in identificatori univoci in SQL. - Non voglio farlo nel codice .Net.