2013-12-15 8 views
6

जब सेक्विलाइज किसी डेटाबेस (उदाहरण के लिए MySQL) में एक उदाहरण सहेजता है तो यह अंत में स्वचालित रूप से "आईडी" फ़ील्ड जोड़ता है (स्वतः-वृद्धि भी)। मैंने लेख और दस्तावेज़ीकरण पढ़ा है लेकिन मुझे इसे अक्षम करने का कोई तरीका नहीं मिला।क्या डिफ़ॉल्ट रूप से बनाया गया डिफ़ॉल्ट "आईडी" कॉलम बदलने का कोई तरीका है?

धन्यवाद।

+0

किसी भी कारण है कि आप इसे निकालना चाहते हैं? इसके अलावा, आप किस MySQL क्लाइंट का उपयोग कर रहे हैं? – verybadalloc

उत्तर

9

यह स्रोत से प्रतीत होता है कि यदि आप 'प्राथमिककी' के रूप में एक विशेषता को परिभाषित करते हैं, तो डीएओ इंटरफ़ेस डिफ़ॉल्ट 'आईडी' फ़ील्ड को आपकी प्राथमिक कुंजी पर वरीयता में हटा देगा।

लाइन देखें 1140 या आस दाव-factory.js में जहां:

var addDefaultAttributes = function() { 
    var self    = this 
     , defaultAttributes = { 
     id: { 
      type: DataTypes.INTEGER, 
      allowNull: false, 
      primaryKey: true, 
      autoIncrement: true 
     } 
     } 

    if (this.hasPrimaryKeys) { 
     defaultAttributes = {} 
    } 

    ... etc. ... 
संबंधित मुद्दे