Dies ist eine Lösung mit T-SQL:
Credits: https://stackoverflow.com/a/32231832/5089204
DECLARE @x XML='<root><Test name="checkTest">TestValue</Test></root>';
SELECT @x;
--This is the XML string in base64
DECLARE @xBase64 VARCHAR(MAX)='PHJvb3Q+DQogIDxUZXN0IG5hbWU9ImNoZWNrVGVzdCI+VGVzdFZhbHVlPC9UZXN0Pg0KPC9yb290Pg==';
CREATE TABLE #testBase64(ID INT, SomeBLOB VARBINARY(MAX));
INSERT INTO #testBase64 VALUES(1,CAST(@xBase64 AS VARBINARY(MAX)));
SELECT ID
,SomeBLOB AS TheBLOB_as_HexString
,CAST(SomeBLOB AS VARCHAR(MAX)) AS TheBLOB_back_to_Base64
--taken from here: https://stackoverflow.com/a/32231832/5089204
,CAST(CAST(CAST(CAST(SomeBLOB AS VARCHAR(MAX)) AS XML).value('.','varbinary(max)') AS VARCHAR(MAX)) AS XML) AS Back_to_XML
FROM #testBase64;
DROP TABLE #testBase64;
/*
The results
Hex-String: 0x50484A766233512B44516F67494478555A584E304947356862575539496D4E6F5A574E725647567A6443492B5647567A64465A686248566C504339555A584E305067304B504339796232393050673D3D
Base64: PHJvb3Q+DQogIDxUZXN0IG5hbWU9ImNoZWNrVGVzdCI+VGVzdFZhbHVlPC9UZXN0Pg0KPC9yb290Pg==
XML again: <root><Test name="checkTest">TestValue</Test></root>
*/
Wenn Sie eine Frage stellen, versuchen, so genau wie möglich zu sein. Eine Base64-Codierung ist im Grunde genommen ein VARCHAR-Feld (Größe), wobei die Buchstaben der 64-Basen-Verkettung verkettet sind. Also ... was ist das Problem, das du hast? – Bonatti
Ich versuche, die Daten aus meiner SQL-Datenbank in unserem BI-Tool abzurufen. Eine der Tabellen hat ein Feld Public, dessen Datentyp Blob ist. Das BI-Tool, das ich verwende, unterstützt keine BLOB-Daten, es sei denn, sie sind .jpg, .png, .bmp, .rtf-Datenformate. Als ich mit meinem Unternehmen nach dem Datentyp suchte, antworteten sie mir, dass Datenblobs xml sind, die Base64-codiert wurden. An diesem Punkt ist dies die einzige Information, die ich habe. – jarus
Wieder müssen Sie Ihr Problem angeben: 'Kann dies in SQL/MYSQL/TSQL getan werden?' Ja. Es ist bereits ein VARCHAR (oder eine andere "String-ähnliche" Struktur). Wenn sie als Blob gespeichert sind, handelt es sich um einen Binärzustand der Bits/Bytes aus dem ursprünglichen Archiv. Sie müssen das abfragen und dann die Datei nach Bedarf lesen. XML-Dateien sind normalerweise "Schlüssel": "Wert" -Paare, die einen bestimmten Kontext zulassen. Da diese nicht linear sind, ist es unwahrscheinlich, dass Sie sie direkt aus SQL in "Tabelle" der Ergebnisse lesen können. Selbst wenn jemand die Antwort kennt, ist die Frage so breit/unsicher, dass es schwer ist, Ihnen zu helfen. – Bonatti