এসকিউএল সার্ভারে বেস64 বেস স্ট্রিংটি ডিকোড করুন


15

varcharএসকিউএল সার্ভারে আমার একটি টেবিলের একটি কলাম রয়েছে যা একটি বেস 64-এনকোডযুক্ত পাঠ্য স্ট্রিং ধারণ করে যা আমি এটির সরল পাঠ্য সমতুল্যে ডিকোড করতে চাই

এসকিউএল সার্ভারের কি এই জাতীয় জিনিস পরিচালনা করতে কোনও নেটিভ কার্যকারিতা রয়েছে?

একটি নমুনা বেস 64 স্ট্রিং:

cm9sZToxIHByb2R1Y2VyOjEyIHRpbWVzdGFtcDoxNDY4NjQwMjIyNTcxMDAwIGxhdGxuZ3tsYXRpdHVkZV9lNzo0MTY5ODkzOTQgbG9uZ2l0dWRlX2U3Oi03Mzg5NjYyMTB9IHJhZGl1czoxOTc2NA==

যা ডিকোড করে:

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

উত্তর:


20

এটি নির্ধারণ:

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

আউটপুট:

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

শুধু আউট অদলবদল BASE64_COL_NAMEআপনার কলাম নামের জন্য, অথবা আপনি প্রতিস্থাপন করতে পারেন sql:column("BASE64_COLUMN")সঙ্গে sql:variable("@base64variable")আপনি একটি ঘোষিত পরিবর্তনশীল যেমন ব্যবহার করতে যদি আপনি একটি ফাংশন বা কিছু তৈরি করছেন চান।

এটি অন্তর্নির্মিত এক্সএমএল কার্যকারিতা (এসকিউএল সার্ভার 2005 সাল থেকে) ব্যবহার করে একটি এক্সএসএল রূপান্তর ব্যবহার করে

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.