2010-09-01 20 views
27

में प्राथमिक कुंजी के रूप में मौजूदा कॉलम को चिह्नित करना मेरे पास कुछ क्वेरी के आधार पर डेटाबेस से डेटाटेबल है।डेटा कॉल करने योग्य

मैं चाहता हूं कि मौजूदा कॉलम के लिए प्राथमिक कुंजी हो।

मैं यह कैसे कर सकता हूं?

dt.PrimaryKey = new DataColumn[] { dt.Columns["pk_column"] }; 

यदि आपका प्राथमिक कुंजी बना है:

उत्तर

57

अपनी डेटा तालिका में स्तंभ का नाम मान लिया जाये कि क्या आप ऐसा कर सकता है प्राथमिक कुंजी pk_column कहा जाता है होना चाहता हूँ, (मान dt अपने DataTable है) एकाधिक स्तंभों के लिए, आप, सरणी के लिए उन्हें जोड़ सकते हैं ताकि तरह:

dt.PrimaryKey = new DataColumn[] { dt.Columns["pk_column1"], dt.Columns["pk_column2"] }; 

इसलिए यदि आप अपने प्राथमिक कुंजी student_id बना रहे थे, तो आप ऐसा कर सकते हैं:

+०१२३५१६४१०
dt.PrimaryKey = new DataColumn[] { dt.Columns["student_id"] }; 
+2

मैं पहले से datatable haivng हूँ जो स्तंभ नाम student_id जो मैं datable ow ऐसा करने के लिए प्राथमिक कुंजी बनाना चाहते है, यह मेरा सही सवाल यह है कि मुझे नहीं प्राथमिक कुंजी बनाने के लिए किसी भी अन्य अतिरिक्त स्तंभ जोड़ना चाहते हैं – NoviceToDotNet

+3

@NoviceToDotNet - यह कोड डेटाटेबल में कोई अतिरिक्त कॉलम नहीं जोड़ रहा है, यह डेटाटेबल में पहले से मौजूद मौजूदा कॉलम (ओं) का उपयोग करके प्राथमिक कुंजी सेट कर रहा है। Student_id के साथ इसे कैसे करें इसके लिए मेरा नवीनतम संपादन देखें। – dcp

+9

@NoviceToDotNet: 'नया' कीवर्ड आपको फेंकने न दें। डीसीपी का सुझाव कोई नया 'डेटा कॉलम' ऑब्जेक्ट नहीं बनाता है; बल्कि, यह एक नया * सरणी * बनाता है और 'प्राथमिक कुंजी' संपत्ति को पास करने के लिए मौजूदा कॉलम को इस सरणी में रखता है। यह सही दृष्टिकोण है। –

0
DataColumn pkCurrencyCodeId = TblCurrencyCode.Columns.Add("CurrencyCodeId", typeof(Int32)); 
TblCurrencyCode.PrimaryKey = new DataColumn[] { pkCurrencyCodeId }; 
संबंधित मुद्दे