Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

डेटाबेस में डुप्लिकेट मानों को रोकें - mysql

आप event_id . पर एक अद्वितीय अनुक्रमणिका चाहते हैं और day :

create unique index idx_recurrence_event_day on recurrence(event_id, day)

यह उस दोहराव को रोकेगा जो आप नहीं चाहते हैं।

यदि आपके पास पहले से ही डुप्लिकेट हैं तो आप उनसे छुटकारा पाने के कई तरीके हैं। हालांकि, यह आसान होगा यदि आपके पास प्रत्येक पंक्ति के लिए एक अद्वितीय आईडी है, जो एक कारण है कि एक ऑटो-इन्क्रिमेंटेड प्राथमिक कुंजी सभी तालिकाओं में उपयोगी है।

यूनिक आईडी के बिना भी इनसे छुटकारा पाने का एक तरीका है:

alter ignore table recurrence add unique (event_id, day);

व्यक्तिगत रूप से, मुझे यह तरीका पसंद नहीं है क्योंकि अनुक्रमणिका जोड़ने से पंक्तियों को हटाया नहीं जाना चाहिए, लेकिन यह एक मान्य MySQL एक्सटेंशन है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. php . के साथ mysql तालिका को लॉक करें

  2. MySQL तालिका में रैंक अपडेट करें

  3. यह सुनिश्चित करने के लिए कि फ़ील्ड में वृद्धि करते समय MySQL डेटाबेस में कोई दौड़ की स्थिति नहीं है?

  4. त्रुटि 1045 (28000):उपयोगकर्ता 'रूट' @ 'लोकलहोस्ट' के लिए प्रवेश निषेध (पासवर्ड का उपयोग करके:नहीं)

  5. MySQL अद्यतन 1-3 के बीच यादृच्छिक संख्या के साथ