Böyle bir durumda, böyle bir durumda, bunu yapmanın kolay bir yolu varsa şaşırırım.Varchar() 'daki onaltılık karakterler aslında asciidir. Kodunun çözülmesi gerekiyor
Tür varchar alanlı bir MS SQL DB sahibim (255). Ascii kod çözücü kullanarak kodunu çözdüğünüzde aslında bir Guid olan bir hex dizgisi içerir. Bunu gerçekten garip geliyor ama burada bir örnek biliyorum:
alanın içeriği: "38353334373838622D393030302D343732392D383436622D383161336634396339663931"
aslında temsil Ne: "8534788b-9000-4729-846b-81a3f49c9f91" İhtiyacım
Bunu çözmek için bir yol ve sadece alanın içeriğini temsil ettiği gerçek kılavuza değiştirin. Bunu T-SQL'de yapmam gerekiyor, kullanamıyorum. Net (eğer yapabilirsem, bu son derece basittir).
GÜNCELLEME: Bazı insanlar tek seferlik tablolara çalışabilir yolları ile yanıt verdiler, ben bir UPDATE deyimi içine bu koymak için bir yol gerekir. Örneğin
: MyFunction Bu sorunun doğru cevabı GÜNCELLEME MyTable SET MyField = MyFunction (MyField)
.
Bu yolun yarısını bana getiriyor, ama varbinary'ye nasıl ulaşırım? Eğer seçtiğimde, dönüştür (varbinary (max), 'FF') bana 0x4646 verir, benim durumumda dize 0xFF – csauve
olmalıdır, muhtemelen bazı dinamik güncelleştirme SQL deyimini yapmak zorundasınız – SQLMenace
Teşekkürler! Bu kesinlikle çalışacak, dinamik SQL kullanmayı düşünmedim. :) – csauve