Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL में डेटाबेस स्कीमा परिवर्तनों को ट्रैक करने के तरीके?


जब भी किसी प्रोजेक्ट में सिंगल डेटाबेस के साथ एक टेबल मौजूद होती है, तो हम स्कीमा वर्जन या माइग्रेशन का उपयोग करके डेटाबेस स्कीमा परिवर्तन कर सकते हैं। इसका उद्देश्य डेटाबेस स्कीमा परिवर्तनों या संरचनात्मक परिवर्तनों को ट्रैक करना है।

स्कीमा परिवर्तनों को ट्रैक करने के लिए टेबल बनाना।

mysql> create table SchemaDatabaseMethodDemo 
-> ( 
-> `WhenTime` timestamp not null default CURRENT_TIMESTAMP, 
-> `TheKey` varchar(200) not null, 
-> `Version` varchar(200), 
-> primary key(`TheKey`) 
-> ) ENGINE=InnoDB; 
Query OK, 0 rows affected (0.45 sec)

टेबल में रिकॉर्ड्स इन्सर्ट करना।

mysql> insert into SchemaDatabaseMethodDemo values(now(), '1001', 'version 5.6.12'); 
Query OK, 1 row affected (0.17 sec)

रिकॉर्ड्स डिस्प्ले करने के लिए।

mysql> select * from SchemaDatabaseMethodDemo;

आउटपुट निम्न है।

+---------------------+--------+----------------+
| WhenTime            | TheKey | Version        |
+---------------------+--------+----------------+
| 2018-10-29 14:21:47 | 1001   | version 5.6.12 |
+---------------------+--------+----------------+
1 row in set (0.00 sec)

नोट − मान लीजिए हम एक SQL स्क्रिप्ट या माइग्रेशन निष्पादित कर रहे हैं तो हमें उपरोक्त टेबल में INSERT स्टेटमेंट की मदद से स्क्रिप्ट की शुरुआत या अंत में एक रो भी जोड़ना होगा।


  1. - उपयोगकर्ता के लिए डिफ़ॉल्ट MySQL डेटाबेस से आपका क्या मतलब है?

    वास्तव में, उपयोगकर्ता के लिए कोई डिफ़ॉल्ट डेटाबेस नहीं होता। लेकिन वर्तमान सत्र के लिए डिफ़ॉल्ट डेटाबेस होता है। इसे निम्नलिखित क्वेरी से देखा जा सकता है:mysql> SELECT DATABASE();+------------+| DATABASE() |+------------+| sample |+------------+1 row in set (0.00 sec)उपरोक्त रिजल्ट सेट दिखात

  1. - वर्तमान ट्रांजैक्शन में किए गए परिवर्तनों को MySQL डेटाबेस में स्थायी रूप से कैसे रिकॉर्ड करें?

    हम वर्तमान ट्रांजैक्शन में किए गए परिवर्तनों को MySQL डेटाबेस में स्थायी रूप से रिकॉर्ड करने के लिए COMMIT कमांड का उपयोग कर सकते हैं। मान लीजिए हम कुछ DML स्टेटमेंट चलाते हैं और यह कुछ डेटा ऑब्जेक्ट्स को अपडेट करता है, तो COMMIT कमांड इन अपडेट को डेटाबेस में स्थायी रूप से रिकॉर्ड कर देगा। उदाहरण

  1. MySQL एरर #1046 - कोई डेटाबेस चुना नहीं गया MySQL एरर #1046 - कोई डेटाबेस चुना नहीं गया

    एरर #1046 तब आता है जब आप टेबल बनाते समय डेटाबेस सेलेक्ट करना भूल जाते हैं। समस्या ); ERROR 1046 (3D000): No database selected समाधान उपलब्ध डेटाबेस देखें: SHOW DATABASES; डेटाबेस चुनें: USE business; Database changed अब टेबल बनाएं — एरर नहीं आएगा: ); Query OK, 0 rows affected (0.50 sec) नो