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

Mysql में ऑटो इंक्रीमेंट फील्ड के सामने टेक्स्ट कैसे डालें (जैसे:TTT00001)?

आपको जो चाहिए वह ट्रिगर और एक और टेबल है। इस ट्रिगर को नीचे आज़माएं;

DELIMITER $$
CREATE TRIGGER tg_tableName_insert
BEFORE INSERT ON tableName
FOR EACH ROW
BEGIN
  INSERT INTO tableName_seq VALUES (NULL);
  SET NEW.id = CONCAT('IDC', LPAD(LAST_INSERT_ID(), 8, '0'));
END$$
DELIMITER ;

अनुक्रम तालिका बनाना न भूलें;

CREATE TABLE tableName_seq
(
  id INT NOT NULL AUTO_INCREMENT PRIMARY KEY
);
CREATE TABLE tableName
(
  id VARCHAR(11) NOT NULL PRIMARY KEY DEFAULT '0'
);

जब आप तालिका नाम तालिका में डेटा सम्मिलित करते हैं तो आपकी पहली आईडी IDC00000001 होगी और दूसरी IDC00000002 इस प्रकार होगी। मुझे आशा है कि यह मदद करता है!




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मैसकल:चुनिंदा <फ़ील्डनाम> से परिणामों का क्रम चयन * से . के साथ परिणामों के क्रम से अलग है

  2. त्रुटि 1054 (42S22):'फ़ील्ड सूची' में अज्ञात कॉलम '‍'

  3. एकाधिक डेटाबेस पर डेटा विभाजित करने का अच्छा अभ्यास?

  4. PHP के साथ MySQL के लिए उपयोग करने के लिए सबसे अच्छा संयोजन क्या है?

  5. टेबल नाम के बिना MySQL COUNT 1 क्यों देता है?