CREATE UNIQUE INDEX idxname ON tablename (fieldname);
इस अनुक्रमणिका को जोड़ने से यह सुनिश्चित हो जाएगा कि fieldname
. के लिए कोई डुप्लिकेट प्रविष्टियां नहीं हैं फ़ील्ड को tablename
. में रिकॉर्ड किया जाएगा टेबल।
आपको दूसरे क्लाइंट के साथ एक MySQL त्रुटि मिलेगी। आपको इसे अपने PHP कोड में संभालना चाहिए, और फ़ॉर्म को फिर से डालना चाहिए (केवल त्रुटि संदेश प्रदर्शित करने के बजाय)।
एक अन्य संभावना (अधिक जटिल बैठकों के लिए) है LOCK
कार्यक्षमता। यदि आप चेक करने से पहले टेबल को लॉक कर देते हैं और फिर आप अपना रिकॉर्ड डालते हैं तो एक समवर्ती ऑपरेशन (दूसरी ब्राउज़र विंडो में) तब तक देरी होगी जब तक आप ताले को छोड़ नहीं देते। फिर रिकॉर्ड पहले ही सहेज लिया जाएगा, इसलिए दूसरी PHP स्क्रिप्ट इसे देखेगी और स्थिति को संभालें।