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

mysql गतिशील रूप से तालिका बनाएं

एक स्ट्रिंग को एक तालिका (या डेटाबेस) नाम का प्रतिनिधित्व करने के लिए आपको अपनी क्वेरी स्ट्रिंग को चर के साथ जोड़ना होगा और संग्रहीत प्रक्रिया में एक कथन तैयार/निष्पादित करना होगा। यहां एक बुनियादी उदाहरण दिया गया है।

-- DROP PROCEDURE IF EXISTS createLogTable;
DELIMITER //
CREATE PROCEDURE createLogTable(tblName VARCHAR(255))
BEGIN
    SET @tableName = tblName;
    SET @q = CONCAT('
        CREATE TABLE IF NOT EXISTS `' , @tableName, '` (
            `id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
            `something` VARCHAR(10) NOT NULL,
            `somedate` DATETIME NOT NULL,
            PRIMARY KEY (`id`)
        ) ENGINE=MyISAM DEFAULT CHARSET=utf8
    ');
    PREPARE stmt FROM @q;
    EXECUTE stmt;
    DEALLOCATE PREPARE stmt;
    -- and you're done. Table is created.
    -- process it here if you like (INSERT etc)
END //

फिर… CALL createLogTable('exampleTable');

तो मूल विचार है

  1. आवश्यकतानुसार अपनी क्वेरी के साथ प्रक्रिया पैरामीटर (पैरामीटरों) को संयोजित करें
  2. इस क्वेरी स्ट्रिंग से एक स्टेटमेंट तैयार/निष्पादित करें



  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. UTF-8 वर्ण एन्कोडिंग लड़ाई json_encode ()

  3. शेल स्क्रिप्ट स्वचालित रूप से mysql नींद प्रक्रियाओं को मारने के लिए

  4. सरणी में पीडीओ डुप्लिकेट मान

  5. mysql डेटाबेस में xls डेटा आयात करने के लिए जावा कोड