यदि आप MyISAM का उपयोग कर रहे हैं, तो आप टेक्स्ट फ़ील्ड + ऑटो इंक्रीमेंट फ़ील्ड पर एक कंपाउंड प्राथमिक कुंजी बना सकते हैं। MySQL स्वचालित रूप से संख्या में वृद्धि को संभाल लेगा। वे अलग-अलग क्षेत्र हैं, लेकिन आप समान प्रभाव प्राप्त कर सकते हैं।
CREATE TABLE example (
company_name varchar(100),
key_prefix char(4) not null,
key_increment int unsigned auto_increment,
primary key co_key (key_prefix,key_increment)
) ENGINE=MYISAM;
जब आप टेबल में इन्सर्ट करते हैं, तो key_increment
key_prefix
. के आधार पर उच्चतम मान के आधार पर फ़ील्ड में वृद्धि होगी . तो key_prefix
के साथ डालें "smit" key_inrement
. में 1 से शुरू होगा , key_prefix
"जोन" key_inrement
. में 1 से शुरू होगा , आदि.
पेशेवरों:
- आपको संख्याओं की गणना के साथ कुछ नहीं करना है।
विपक्ष:
- आपके पास 2 स्तंभों में एक कुंजी विभाजन है।
- यह InnoDB के साथ काम नहीं करता है।