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

mysql एक बार में 2 टेबल में डालने वाला प्राथमिक कुंजी और विदेशी कुंजी है

आप STORED PROCEDURE . का उपयोग कर सकते हैं इस पर आप आवेदन स्तर से केवल एक बार कॉल करेंगे। उदाहरण,

DELIMITER $$
CREATE PROCEDURE InsertBook
(
    IN _Title INT,
    IN _AwardName VARCHAR(35),
    IN _Year INT
)
BEGIN
    INSERT INTO Books (Title)
    VALUES(_Title);

    -- since the ID is set as AUTO_INCREMENT
    -- there are two ways to do how you can get the ID 
    -- from the Books Table and insert it 
    -- on BookAwards

    -- FIRST WAY
    -- by using LAST_INSERT_ID()
    SET @last_ID = LAST_INSERT_ID();

    -- SECOND WAY
    -- by using MAX()
    -- SET @last_ID = (SELECT MAX(ID) FROM Books);


    INSERT INTO BookAwards(ID, AwardName, Year)
    VALUES (@last_ID, _AwardName, _Year);
END $$
DELIMITER ;

और आवेदन स्तर पर या किसी भी स्रोत पर जिसे आप इस प्रक्रिया को कॉल करना चाहते हैं,

CALL InsertBook('Lost Art', 'Best in Churva', 2013);

सुरक्षा उद्देश्यों के लिए, आप अभी भी प्रक्रिया को मानकीकृत कर सकते हैं, उदाहरण के लिए

CALL InsertBook(?, ?, ?);



  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. कॉलम गिनती पंक्ति में मूल्य गणना से मेल नहीं खाती है, लेकिन यह करता है

  3. MySQL में सूचना स्कीमा से सूचकांक दिशा प्राप्त करें

  4. MySQL में अल्पविराम से अलग किए गए फ़ील्ड को एकाधिक पंक्तियों में कैसे विस्तारित करें

  5. MySQL वर्कबेंच में टेबल निर्माण स्क्रिप्ट कैसे प्राप्त करें?