Base64 Dizesini Yerel Olarak SQL Server'da Çöz


15

varcharSQL Server'da düz metin eşdeğerine kodunu çözmek istediğiniz base64 kodlu bir metin dizesi tutan bir sütun var

SQL Server'ın bu tür şeyleri işlemek için herhangi bir yerel işlevi var mı ?

Örnek bir base64 dizesi:

cm9sZToxIHByb2R1Y2VyOjEyIHRpbWVzdGFtcDoxNDY4NjQwMjIyNTcxMDAwIGxhdGxuZ3tsYXRpdHVkZV9lNzo0MTY5ODkzOTQgbG9uZ2l0dWRlX2U3Oi03Mzg5NjYyMTB9IHJhZGl1czoxOTc2NA==

Hangi kod çözme:

role:1 producer:12 timestamp:1468640222571000 latlng{latitude_e7:416989394 longitude_e7:-738966210} radius:19764

Yanıtlar:


20

Anladım:

SELECT 
    CONVERT
    (
        VARCHAR(MAX), 
        CAST('' AS XML).value('xs:base64Binary(sql:column("BASE64_COLUMN"))', 'VARBINARY(MAX)')
    ) AS RESULT
FROM
    (
        SELECT 'cm9sZToxIHByb2R1Y2VyOjEyIHRpbWVzdGFtcDoxNDY4NjQwMjIyNTcxMDAwIGxhdGxuZ3tsYXRpdHVkZV9lNzo0MTY5ODkzOTQgbG9uZ2l0dWRlX2U3Oi03Mzg5NjYyMTB9IHJhZGl1czoxOTc2NA==' AS BASE64_COLUMN
    ) A

Çıktı:

role:1 producer:12 timestamp:1468640222571000 latlng{latitude_e7:416989394 longitude_e7:-738966210} radius:19764

Sadece dışarı takas BASE64_COL_NAMEsütun adı için veya değiştirebilir sql:column("BASE64_COLUMN")ile sql:variable("@base64variable")size bir işlev ya da bir şey yapıyorsanız bir ilan değişken örneğin kullanmak istiyorsanız.

Yerleşik XML işlevini kullanarak bir XSL dönüşümü kullanır (SQL Server 2005'ten beri)

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.