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

पायथन में एकाधिक एसक्यूएल स्टेटमेंट चलाने का सुझाव दिया?

मैं एक संग्रहित प्रक्रिया बनाउंगा:

DROP PROCEDURE IF EXISTS CopyTable;
DELIMITER $$
CREATE PROCEDURE CopyTable(IN _mytable VARCHAR(64), _table_name VARCHAR(64))
BEGIN
    SET FOREIGN_KEY_CHECKS=0;
    SET @stmt = CONCAT('DROP TABLE IF EXISTS ',_table_name);
    PREPARE stmt1 FROM @stmt;
    EXECUTE stmt1;
    SET FOREIGN_KEY_CHECKS=1;
    SET @stmt = CONCAT('CREATE TABLE ',_table_name,' as select * from ', _mytable);
    PREPARE stmt1 FROM @stmt;
    EXECUTE stmt1;
    DEALLOCATE PREPARE stmt1;
END$$
DELIMITER ;

और फिर बस दौड़ें:

args = ['mytable', 'table_name']
cursor.callproc('CopyTable', args)

इसे सरल और मॉड्यूलर रखते हुए। बेशक आपको किसी प्रकार की त्रुटि जांच करनी चाहिए और सफलता या विफलता को इंगित करने के लिए स्टोर प्रक्रिया एक कोड वापस कर सकती है।



  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. अद्वितीय पृष्ठ शीर्षक स्लग बनाना php

  3. पहले विशिष्ट फ़ील्ड मान द्वारा आदेश देना

  4. PHP को MySQL क्लाइंट की तुलना में क्वेरी चलाने में 90x अधिक समय लगता है

  5. PHP एक टेबल से दूसरी टेबल में डेटा डालें