में एक पंक्ति का sha1-हैश बनाना Iracle डेटाबेस पर किसी चयन में पंक्ति के sha1-hash बनाने में कोई समस्या है।ओरेकल
SELECT *,HASHBYTES('SHA1',CAST(ID as varchar(10)+
TextEntry1+TextEntry2+CAST(Timestamp as varchar(10)) as Hash
FROM dbo.ExampleTable
WHERE ID = [foo]
हालांकि, मैं एक समान कार्य जब Oracle के साथ काम कर उपयोग करने के लिए खोजने के लिए प्रतीत नहीं कर सकते हैं: इस प्रकार मैं MSSQL में यह किया है। जहाँ तक मेरी Googling मुझे लाया गया है, मैं dbms_crypto.hash_sh1 अनुमान लगा रहा हूँ इसके साथ कुछ करने के लिए है, लेकिन मैं इसे चारों ओर मेरे मस्तिष्क रैप करने के लिए अभी तक नहीं कर पाए हैं ...
किसी भी संकेत दिए गए बहुत होगा की सराहना की।
सहायता के लिए धन्यवाद। मुझे एक नियमित एसक्यूएल करते समय इसे काम करने के लिए निरंतर की बजाय dbms_crypto.hash_sh1 मान (पूर्णांक 3) का उपयोग करना था। SELECT.dsms_crypto.hash चुनें (utl_raw.cast_to_raw (col1), 3) टी से; – PrometheusDrake
मुझे नहीं लगता कि यह 11 जी आर 2 के लिए बिल्कुल सही है। लगता है कि 'dbms_crypto.hash' में 'कच्चे',' ब्लॉब 'और' क्लोब 'के लिए 3 अधिभारित संस्करण हैं। 'varchar2' मान को' utl_i18n.string_to_raw' या 'utl_raw.cast_to_raw' के साथ स्पष्ट रूप से 'कच्चे' में परिवर्तित करना होगा। या चरित्र डेटा के लिए 'clobs' का उपयोग करें। – user272735
क्या होगा यदि कुछ कॉलम हैं जिनमें स्ट्रिंग डेटा प्रकार नहीं है? – ca9163d9