SORU
7 EYLÜL 2009, PAZARTESİ


Varchar SQL Server aşağıdaki örnek dönüştürme

Dükkanlar biçiminde uniqueidentifiers olan bir sütun varchar olarak tanımlı(50) içerir için şema kontrol edemiyorum bir tablo 'a89b1acd95016ae6b9c8aabb07da2010 (tire)'

Bir geçiş için SQL uniqueidentifiers için bu dönüştürmek istiyorum .Net Guıd. Ancak, aşağıdaki sorgu satırlarını benim için çalışmıyor:

select cast('a89b1acd95016ae6b9c8aabb07da2010' as uniqueidentifier)
select convert(uniqueidentifier, 'a89b1acd95016ae6b9c8aabb07da2010')

ve sonuç:

Msg 8169, Level 16, State 2, Line 1
Conversion failed when converting from a character string to uniqueidentifier.

Aynı sorguları hecelenmiş bir Aşağıdaki örnek, kullanarak iyi çalışır ama veri biçiminde depolanır.

(Verimli) bir şekilde SQL uniqueidentifiers için bu dizeleri dönüştürmek için vardır. - Bunu yapmak istemiyorum .Net kodu.

CEVAP
7 EYLÜL 2009, PAZARTESİ


DECLARE @uuid VARCHAR(50)
SET @uuid = 'a89b1acd95016ae6b9c8aabb07da2010'
SELECT  CAST(
        SUBSTRING(@uuid, 1, 8)   '-'   SUBSTRING(@uuid, 9, 4)   '-'   SUBSTRING(@uuid, 13, 4)   '-'  
        SUBSTRING(@uuid, 17, 4)   '-'   SUBSTRING(@uuid, 21, 12)
        AS UNIQUEIDENTIFIER)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bogdan Gabriel

    Bogdan Gabri

    5 Aralık 2006
  • discokatze

    discokatze

    23 EYLÜL 2009
  • xSammyJoe1

    xSammyJoe1

    19 Temmuz 2011