बस हमेशा में अपने मानक GUID
का उपयोग करें। नेट ...
जब आप ओरेकल में कुछ GUID
तुम सिर्फ फोन Guid.ToString ("N")
डालने और Oracle करने के लिए कि स्ट्रिंग को खिलाने के लिए चाहते हैं (इस उदाहरण में परम नाम MyNETVAL
है):
INSERT INTO MyTable (MyRAWCol)
SELECT HEXTORAW (SUBSTR (MyNETVal, 6, 2) || SUBSTR (MyNETVal, 4, 2) || SUBSTR (MyNETVal, 2, 2) || SUBSTR (MyNETVal, 0, 2) || SUBSTR (MyNETVal, 10, 2) || SUBSTR (MyNETVal, 8, 2) || SUBSTR (MyNETVal, 14, 2) || SUBSTR (MyNETVal, 12, 2) || SUBSTR (MyNETVal, 16, 16)) FROM DUAL;
आप ओरेकल से एक RAW
आप उपयोग पढ़ते हैं :
SELECT
SUBSTR (HexV, 6, 2) || SUBSTR (HexV, 4, 2) || SUBSTR (HexV, 2, 2) || SUBSTR (HexV, 0, 2) || SUBSTR (HexV, 10, 2) || SUBSTR (HexV, 8, 2) || SUBSTR (HexV, 14, 2) || SUBSTR (HexV, 12, 2) || SUBSTR (HexV, 16, 16) AS MyNETVal
FROM (SELECT RAWTOHEX (MyRAWCol) HexV FROM MyTable);
तो फिर तुम new Guid (MyNETVal)
में लौटे MyNETVal
फ़ीड कर सकते हैं।
इस प्रकार आपका कोड हमेशा .NET प्रारूप से संबंधित होता है और बाइट स्विचिंग ओरेकल-डीबी में होती है ... आप अपने कोड को रूपांतरण कोड के साथ विनियमित नहीं करते हैं और कोड कोड को उसी स्थान पर रख सकते हैं जब दूसरे पर स्विचिग हो डीबीएस - बस एसक्यूएल बदल सकते हैं और आप सक्रिय होकर चलने लगेंगे ... एसक्यूएल अन्य डीबीएस के साथ सरल हो सकता है क्योंकि उनमें से कुछ Windows के GUID प्रारूप का पालन ...
संभावित डुप्लिकेट [System.Guid को ओरेकल रॉ से बाइट सरणी में कनवर्ट करें?] (Http://stackoverflow.com/questions/2667740/convert-byte-array-from-oracle-raw-to -सिस्टम-गाइड) –