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

MySQL INSERT MAX () +1 के साथ समस्या

आप कुछ इस तरह इस्तेमाल कर सकते हैं:

INSERT INTO users (user_id, name)
SELECT 1 + coalesce((SELECT max(user_id) FROM users WHERE name='Bob'), 0), 'Bob';

लेकिन इस तरह की क्वेरी से रेस कंडीशन हो सकती है। सुनिश्चित करें कि आप लेन-देन कर रहे हैं और इसे चलाने से पहले आप उपयोगकर्ता तालिका को लॉक कर देते हैं। अन्यथा आप एक ही संख्या वाले दो बॉब प्राप्त कर सकते हैं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एक MySQL जॉइन के साथ समस्याएँ होना जिसके लिए कई शर्तों को पूरा करने की आवश्यकता होती है

  2. MySQL में समग्र प्राथमिक कुंजी कैसे बनाएं

  3. MySQL - समय का योग कैसे करें?

  4. क्या MySQL कनेक्टर/जेडीबीसी थ्रेड सुरक्षित है?

  5. php में mysql डेटाबेस से ग्राफ़ और चार्ट कैसे उत्पन्न करें?