Oracle में, मेरे पास एक टेबल users है। इस तालिका के भीतर, प्रत्येक उपयोगकर्ता के लिए, मैं एक उपयोगकर्ता की विशेषताओं की एक सरणी को संग्रहीत करने में सक्षम होना चाहता हूं, जो कि कुंजी-मूल्य जोड़े हैं।

मैं तीन स्तंभों के साथ एक अतिरिक्त तालिका बना सकता था- users तालिका, कुंजी और मान को इंगित करने वाली विदेशी कुंजी- लेकिन मैं चीजों को सरल रखना पसंद करूंगा और इसके लिए एक अतिरिक्त तालिका नहीं बनाना चाहता हूं।

मुझे पता है कि ओरेकल के पास इस तरह से बनाए गए वर्रे हैं:

CREATE OR REPLACE TYPE example AS VARRAY(20) OF NVARCHAR2(500);

मैं वही काम कैसे करूं, लेकिन NVARCHAR2 के बजाय, मेरे पास एक टपल (NVARCHAR2(50), NVARCHAR2(200)) होगा?

Oracle टुपल्स के बारे में सभी संसाधन या तो स्तंभों के समूहीकरण को WHERE ... IN क्लॉज में उपयोग करने की ओर इशारा करते हैं, या जावा-संबंधित दस्तावेज़

0
Arseni Mourzenko 22 सितंबर 2020, 11:31

1 उत्तर

सबसे बढ़िया उत्तर

क्या होगा यदि आप record ... का उपयोग करते हैं और टपल का नहीं?

DECLARE

TYPE t_myrecord IS RECORD ( field1 varchar2(50), field2 varchar2(200));
TYPE t_myarray IS VARRAY(20) OF t_myrecord;
a_myrecord t_myrecord;
a_myarray t_myarray := t_myarray();

BEGIN
a_myrecord.field1 := 'a';
a_myrecord.field2 := 'b';
a_myarray.extend(19);
a_myarray(1) := a_myrecord;
END;
1
Plirkee 22 सितंबर 2020, 09:00