Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

Oracle के लिए एंटिटी फ्रेमवर्क संगत प्रदाताओं की तुलना?

मैंने विभिन्न प्रदाताओं की एक त्वरित तुलना की जिसमें निम्न शामिल थे:

  1. स्थापना अनुभव।
  2. कनेक्टिविटी।
  3. सर्वर एक्सप्लोरर अनुभव।
  4. डेटाबेस अनुभव से अपडेट करना (डेटाबेस पहले)।
  5. डेटा प्रकार मैपिंग (डेटाबेस पहले)।

ये निष्कर्ष हैं:

<बी>1. स्थापना का अनुभव।

Oracle का ODP.NET (बीटा 3):अलग x86 और x64 संस्करणों की जटिल स्थापना, Windows के लिए डिज़ाइन नहीं किए गए इंस्टॉलर। सिस्टम पथ भरता है (खतरनाक रूप से अधिकतम लंबाई के करीब), मानक फ़ोल्डर (प्रोग्राम फ़ाइलें + ऐपडेटा) में स्थापित नहीं होता है।

Devart's DotConnect:सुगम स्थापना, प्रदाता DLL पूरी तरह से प्रबंधित है।

डेटाडायरेक्ट की प्रगति:सुगम स्थापना, प्रदाता डीएलएल पूरी तरह से प्रबंधित है।

OPENLINK:ऐसा लगता है कि सर्वर साइड इंस्टॉलेशन की आवश्यकता है, आगे परीक्षण नहीं किया।

<बी>2. कनेक्टिविटी।

Oracle का ODP.NET (बीटा 3):कॉन्फ़िगर करने के लिए जटिल, क्लाइंट मशीन पर Oracle इंस्टॉलेशन और Oracle इंस्टॉलेशन में अतिरिक्त TSN फ़ाइल या LISP/Scheme की तरह दिखने वाली लंबी और जटिल कनेक्शन स्ट्रिंग की आवश्यकता होती है।
अपडेट करें: दस्तावेज़ में यह नहीं मिला, हालांकि, कनेक्शन स्ट्रिंग में सरल डेटा स्रोत परिभाषा भी हो सकती है उदा। सर्वरनाम:पोर्ट/सेवानाम।

Devart's DotConnect:साधारण कनेक्शन स्ट्रिंग + विज़ार्ड।

डेटाडायरेक्ट की प्रगति:सरल कनेक्शन स्ट्रिंग + विज़ार्ड।

<बी>3. सर्वर एक्सप्लोरर अनुभव।

Oracle का ODP.NET (बीटा 3):तीनों में से सबसे शक्तिशाली, आसान संपादन, कुंजियों और अनुक्रमितों को देखने में सक्षम बनाता है।

Devart's DotConnect:टेबल और फ़ील्ड देखना।

डेटाडायरेक्ट की प्रगति:आसान संपादन, कुंजियों और अनुक्रमितों को देखने में सक्षम बनाता है।

<बी>4. डेटाबेस अनुभव (डेटाबेस पहले) से अपडेट हो रहा है।

Oracle का ODP.NET (बीटा 3):स्ट्रेटफॉरवर्ड।

Devart's DotConnect:सभी स्कीमाओं से तालिकाएँ दिखाता है, फ़िल्टर करने का कोई विकल्प नहीं - तालिकाओं को ढूँढना थकाऊ बनाता है।

डेटाडायरेक्ट की प्रगति:सीधे आगे।

<बी>5. डेटा प्रकार मैपिंग (डेटाबेस पहले)।

Oracle का ODP.NET (बीटा 3):संख्या(1,0), संख्या(2,0) और संख्या(3,0) के लिए डिफ़ॉल्ट मानचित्रण गलत हैं*। संख्या (2,0) और संख्या (3 के लिए मैन्युअल रूप से ओवरराइड कर सकते हैं) ,0)। संख्या (1,0) के लिए फिक्सिंग काम नहीं करता (कम से कम बीटा 3 पर नहीं - बीटा 2 में काम किया हो सकता है)।

अपडेट करें: अब जबकि रिलीज़ संस्करण समाप्त हो गया है (112030) इसे ठीक कर दिया गया है। ऐप.कॉन्फ़िगरेशन फ़ाइल में अनुभाग के माध्यम से कुछ मैपिंग संभव हैं।

Devart's DotConnect:सभी स्कीमाओं से टेबल दिखाता है, फ़िल्टर करने का कोई विकल्प नहीं है - टेबल ढूंढना थकाऊ बनाता है। बाइनरी फ्लोट के लिए डिफ़ॉल्ट मैपिंग, बाइनरी डबल, टाइम ज़ोन के साथ टाइमस्टैम्प, संख्या (2,0), संख्या (3,0) और संख्या (4 ,0) गलत हैं*। मैन्युअल ओवरराइड काम करना चाहिए - जाँच नहीं की।

डेटाडायरेक्ट की प्रगति:डिफ़ॉल्ट मैपिंग ठीक हैं*।

(*) मैपिंग जिसकी मुझे उम्मीद थी:

DB Data Type    .NET Data Type
integer     Decimal
int         Decimal
smallint        Decimal
long        String
decimal     Decimal
rowid       String
float       Decimal
double      Decimal
binary float    Single
binary double   Double
char[40]        String
charvar[40]     String
natchar[40]     String
natcharvar[40]  String
natcharacter[40]    String
natcharactervar[40] String
number      Decimal
numeric     Decimal
nvarchar2[40]   String
real        Decimal
date        DateTime
timestamp       DateTime
timestamplocal  DateTime
timestampzone   DateTimeOffset
xml String
raw15       Binary
raw16       Guid
raw17       Int64
number(1,0)     Boolean
number(2,0)     Byte or SByte
number(3,0)     Byte or SByte (accepted Int16 as OK too)
number(4,0)     Int16
number(5,0)     Int16 (accepted Int32 as OK too)
number(6,0)     Int32
number(7,0)     Int32
number(8,0)     Int32
number(9,0)     Int32
number(10,0)    Int32 (accepted Int64 as OK too)
number(11,0)    Int64
number(15,0)    Int64
number(16,0)    Int64
number(17,0)    Int64
number(18,0)    Int64
number(19,0)    Int64 (accepted Decimal as OK too)
number(20,0)    Decimal (would accept Int64 as OK too)
number(21+,0)   Decimal

यदि आप चाहते हैं कि डेटाबेस प्रकार .NET प्रकार की श्रेणी में किसी भी संख्या को संग्रहीत करने में सक्षम हो, तो इंटएक्स को एक संख्या (एन, 0) की आवश्यकता होती है जहां भंडारण के लिए सील (लॉग 10 (2 ^ एक्स)) =एन **।

Bool (Int1) ==> number(1,0)
Byte (Int8) ==> number(3,0)
Int16, UInt16 ==> number(5,0)
Int32, UInt32 ==> number(10,0)
Int64 ==> number(19,0)
UInt64 ==> number(20,0)

** गणना अहस्ताक्षरित संख्याओं को मानती है, हस्ताक्षरित संख्याओं के लिए ceil(log(2^(X-1)).

डेटा प्रकार अनुमानों के लिए संदर्भ:
नेट पर टेक
Devart
Oracle



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. फॉरवर्ड क्रॉस संस्करण R12.2 . में ट्रिगर होता है

  2. कर्सर:पिन एस X पर प्रतीक्षा करें

  3. 2 कार्य जो Oracle में एक तिथि से दिन, महीना और वर्ष प्राप्त करते हैं

  4. तालिका में सभी पंक्तियों को अद्यतन करने का प्रभावी तरीका

  5. Oracle बग डेटाबेस कहाँ है?