मैं निम्नलिखित कॉलम के साथ एक मेज है:पेटापोको कक्षा को गैर-संख्यात्मक कॉलम समेत समग्र कुंजी के साथ काम करने के लिए कैसे संशोधित करें?
ContractorId ......... INT ............. पहचान
ContractorName ........ vARCHAR (50) ....... पी
ContractorGrade ....... vARCHAR (3) ....... पी
वर्ग PetaPoco टी -4 टेम्पलेट द्वारा उत्पन्न इस तरह दिखता है:
[TableName("contractor_master")]
[PrimaryKey("contractorname", autoIncrement=false)]
[ExplicitColumns]
public partial class contractor_master : TubewellRepo.Record<contractor_master>
{
[Column]
public int contractorid
{
get
{
return _contractorid;
}
set
{
_contractorid = value;
MarkColumnModified("contractorid");
}
}
int _contractorid;
[Column]
public string contractorname
{
get
{
return _contractorname;
}
set
{
_contractorname = value;
MarkColumnModified("contractorname");
}
}
string _contractorname;
[Column]
public string contractorgrade
{
get
{
return _contractorgrade;
}
set
{
_contractorgrade = value;
MarkColumnModified("contractorgrade");
}
}
string _contractorgrade;
}
एक नया रिकॉर्ड सम्मिलित करने के लिए कोड के रूप में नीचे है:
// Insert a record
var Contractor=new contractor_master();
Contractor.contractorname = "Super Borewells";
Contractor.contractorgrade = "A";
db.Insert(Contractor);
कक्षा कोड की दूसरी पंक्ति में, मैं जानना चाहता हूं कि एक समग्र कुंजी का उल्लेख कैसे करें, जो (ठेकेदार नाम + ठेकेदार ग्रेड) है।
दूसरा, यह रिकॉर्ड नहीं डाल रहा है क्योंकि यह एक आईडी कॉलम की अपेक्षा करता है। भले ही ठेकेदार आईडी पहचान है, यह प्राथमिक कुंजी नहीं है।
यह एक नया रिकॉर्ड शामिल नहीं है और त्रुटि देता है क्योंकि यह पहचान कॉलम में 0 डाल रहा है।
यदि आपके पास पहले से ही 'ठेकेदार आईडी' कॉलम है, तो पेटापोको इसे प्राथमिक कुंजी के रूप में क्यों नहीं उपयोग करता है? आप अभी भी डीबी में समग्र कुंजी रख सकते हैं। –
ठीक है। लेकिन सिर्फ यह जानना चाहता था कि पेटापोको ने समग्र कुंजी का समर्थन किया है या नहीं। – RKh