MySQL में डेटाबेस बनाने के चरण
दो तरह से डेटाबेस बनाएं
1) एक साधारण SQL क्वेरी निष्पादित करके
2) MySQL कार्यक्षेत्र में आगे इंजीनियरिंग का उपयोग करके
इस SQL ट्यूटोरियल में, आप सीखेंगे-
- डाटाबेस कैसे बनाएं
- MySQL में टेबल कैसे बनाये
- डेटा के प्रकार
- MySQL कार्यक्षेत्र ईआर आरेख आगे इंजीनियरिंग
SQL शुरुआत के रूप में, आइए पहले क्वेरी विधि पर ध्यान दें।
डाटाबेस कैसे बनाएं
यहाँ MySQL में डेटाबेस कैसे बनाया जाता है:
बनाएँ डेटाबेस MySQL में एक डेटाबेस बनाने के लिए प्रयोग किया जाता SQL कमांड है।
कल्पना करें कि आपको "फिल्मों" के नाम के साथ एक डेटाबेस बनाने की आवश्यकता है। आप SQL कमांड का पालन करके MySQL में एक डेटाबेस बना सकते हैं।
CREATE DATABASE movies;
नोट: आप क्रिएट डैटबेस के बजाय कमांड क्रिएट स्कीमा का भी उपयोग कर सकते हैं
अब अधिक मापदंडों और विशिष्टताओं को जोड़कर हमारी SQL क्वेरी में सुधार करते हैं।
यदि एक्जिट नहीं है
एक एकल MySQL सर्वर में कई डेटाबेस हो सकते हैं। यदि आप एक ही MySQL सर्वर तक पहुँचने वाले एकमात्र नहीं हैं या यदि आपको कई डेटाबेस से निपटना है, तो एक मौजूदा डेटाबेस के नाम के साथ एक नया डेटाबेस बनाने का प्रयास करने की संभावना है। यदि EXISTS आपको डेटाबेस बनाने से पहले एक समान नाम के साथ डेटाबेस के अस्तित्व की जांच करने के लिए MySQL सर्वर को निर्देश देने की अनुमति नहीं देता है।
जब IF NOT EXISTS का उपयोग किया जाता है तो डेटाबेस तब ही बनाया जाता है जब दिया गया नाम किसी मौजूदा डेटाबेस के नाम के साथ विरोध नहीं करता है। बिना उपयोग के आईएफएस के बिना MySQL एक त्रुटि फेंकता है।
CREATE DATABASE IF NOT EXISTS movies;
कोलाज और कैरेक्टर सेट
मिलान के सेट कर दिया जाता तुलना में इस्तेमाल नियम। कई लोग MySQL का उपयोग अंग्रेजी के अलावा अन्य डेटा को स्टोर करने के लिए करते हैं। डेटा एक विशिष्ट वर्ण सेट का उपयोग करके MySQL में संग्रहीत किया जाता है। वर्ण सेट को विभिन्न स्तरों अर्थात सर्वर, डेटाबेस, टेबल और कॉलम में परिभाषित किया जा सकता है।
आपको टकराने के नियमों का चयन करने की आवश्यकता है जो बदले में चुने गए चरित्र पर निर्भर करते हैं।
उदाहरण के लिए, लैटिन 1 वर्ण सेट का उपयोग करता है
latin1_swedish_ci
टकराव जो स्वीडिश मामला असंवेदनशील आदेश है।
CREATE DATABASE IF NOT EXISTS movies CHARACTER SET latin1 COLLATE latin1_swedish_ci
स्थानीय भाषाओं जैसे अरबी, चीनी इत्यादि का उपयोग करते समय सबसे अच्छा अभ्यास यूनिकोड (utf-8) वर्ण सेट का चयन करना है, जिसमें कई समतुल्य हैं या बस डिफ़ॉल्ट collation utf8-general-ci से चिपके रहते हैं।
आप सभी कोलाजेशन और कैरेक्टर सेट की सूची यहां पा सकते हैं
SQL कमांड को चलाकर आप मौजूदा डेटाबेस की सूची देख सकते हैं।
SHOW DATABASES
MySQL में टेबल कैसे बनाये
क्रिएट टेबल कमांड का उपयोग किसी डेटाबेस में टेबल बनाने के लिए किया जाता है
टेबल्स क्रिएट टेबल स्टेटमेंट का उपयोग करके बनाया जा सकता है और इसमें वास्तव में निम्नलिखित सिंटैक्स होता है।
CREATE TABLE [IF NOT EXISTS] `TableName` (`fieldname` dataType [optional parameters]) ENGINE = storage Engine;
यहां
- "क्रिएट टेबल" डेटाबेस में टेबल के निर्माण के लिए जिम्मेदार है।
- "" अगर नहीं है तो] "वैकल्पिक है और केवल तालिका बनाये यदि कोई मिलान तालिका नाम नहीं मिला।
- "` fieldName` "फ़ील्ड का नाम है और" डेटा प्रकार "फ़ील्ड में संग्रहीत डेटा की प्रकृति को परिभाषित करता है।
- "" वैकल्पिक पैरामीटर] "किसी फ़ील्ड के बारे में अतिरिक्त जानकारी जैसे" AUTO_INCREMENT ", NOT NULL आदि।
MySQL तालिका उदाहरण बनाएँ
डेटाबेस में तालिका बनाने के लिए MySQL उदाहरण नीचे दिया गया है:
CREATE TABLE IF NOT EXISTS `MyFlixDB`.`Members` (`membership_number` INT AUTOINCREMENT ,`full_names` VARCHAR(150) NOT NULL ,`gender` VARCHAR(6) ,`date_of_birth` DATE ,`physical_address` VARCHAR(255) ,`postal_address` VARCHAR(255) ,`contact_number` VARCHAR(75) ,`email` VARCHAR(255) ,PRIMARY KEY (`membership_number`) )ENGINE = InnoDB;
अब देखते हैं कि MySQL के डेटा प्रकार क्या हैं। आप अपनी जरूरत के आधार पर उनमें से किसी का उपयोग कर सकते हैं। डेटाबेस बनाते समय आपको हमेशा डेटा की संभावित सीमा को कम या ज्यादा न करने की कोशिश करनी चाहिए।
डेटा के प्रकार
डेटा प्रकार उस डेटा की प्रकृति को परिभाषित करता है जिसे किसी तालिका के किसी विशेष कॉलम में संग्रहीत किया जा सकता है
MySQL में डेटा प्रकार की 3 मुख्य श्रेणियां हैं
- न्यूमेरिक,
- टेक्स्ट
- दिनांक और समय।
संख्यात्मक डेटा प्रकार
संख्यात्मक डेटा प्रकार का उपयोग संख्यात्मक मानों को संग्रहीत करने के लिए किया जाता है। यह सुनिश्चित करना बहुत महत्वपूर्ण है कि आपके डेटा की श्रेणी संख्यात्मक डेटा प्रकारों की निचली और ऊपरी सीमाओं के बीच है।
टिनिनेट () | -128 से 127 सामान्य 0 से 255 अंक। |
लघु () | -32768 से 32767 सामान्य 0 से 65535 UNSIGNED। |
दवा () | -8388608 से 8388607 सामान्य 0 से 16777215 UNSIGNED। |
INT () | -2147483648 से 2147483647 सामान्य 0 से 4294967295 UNSIGNED। |
BIGINT () | -9223372036854775808 से 9223372036854775807 सामान्य 0 से 18446744073709551615 UNSIGNED। |
फ्लोट | फ्लोटिंग दशमलव बिंदु के साथ एक छोटी अनुमानित संख्या। |
डबल () | फ्लोटिंग दशमलव बिंदु के साथ एक बड़ी संख्या। |
DECIMAL (,) | एक दशमलव एक निश्चित दशमलव बिंदु के लिए अनुमति देता है, एक स्ट्रिंग के रूप में संग्रहीत। मुद्रा मूल्यों को संग्रहीत करने के लिए विकल्प। |
पाठ डेटा प्रकार
जैसा कि डेटा प्रकार श्रेणी नाम का तात्पर्य है, इनका उपयोग पाठ मूल्यों को संग्रहीत करने के लिए किया जाता है। हमेशा सुनिश्चित करें कि आप अपने पाठ्य डेटा की लंबाई अधिकतम लंबाई से अधिक न हो।
CHAR () | 0 से 255 वर्ण लंबा एक निश्चित खंड। |
VARCHAR () | एक वर्ण खंड 0 से 255 वर्ण लंबा। |
TINYTEXT | अधिकतम 255 वर्णों वाली एक स्ट्रिंग। |
पाठ | अधिकतम 65535 वर्णों वाली एक स्ट्रिंग। |
ब्लॉब | अधिकतम 65535 वर्णों वाली एक स्ट्रिंग। |
मेडिटेट | 16777215 वर्णों की अधिकतम लंबाई वाला एक तार। |
MEDIUMBLOB | 16777215 वर्णों की अधिकतम लंबाई वाला एक तार। |
लंबा | 4294967295 वर्णों की अधिकतम लंबाई के साथ एक स्ट्रिंग। |
LONGBLOB | 4294967295 वर्णों की अधिकतम लंबाई के साथ एक स्ट्रिंग। |
दिनांक समय
तारीख | YYYY-MM-DD |
दिनांक और समय | YYYY-MM-DD HH: MM: SS |
TIMESTAMP | YYYYMMDDHHMMSS |
समय | एचएच: एमएम: एसएस |
ऊपर के अलावा MySQL में कुछ अन्य डेटा प्रकार हैं।
ENUM | पूर्वनिर्धारित पाठ मानों की सूची से चुना गया पाठ मान संग्रहीत करने के लिए |
सेट | इसका उपयोग पूर्व-निर्धारित पाठ मानों की सूची से चुने गए पाठ मानों को संग्रहीत करने के लिए भी किया जाता है। इसके कई मूल्य हो सकते हैं। |
BOOL | टिनिनेट (1) के लिए पर्यायवाची शब्द, बूलियन मूल्यों को संग्रहीत करने के लिए उपयोग किया जाता है |
बायनरी | CHAR के समान, अंतर ग्रंथ बाइनरी प्रारूप में संग्रहीत हैं। |
वार्बिनरी | VARCHAR के समान, अंतर ग्रंथों को बाइनरी प्रारूप में संग्रहीत किया जाता है। |
अब एक तालिका बनाने के लिए एक क्वेरी देखते हैं जिसमें सभी प्रकार के डेटा होते हैं। इसका अध्ययन करें और पहचानें कि नीचे दिए गए तालिका MySQL उदाहरण में प्रत्येक डेटा प्रकार को कैसे परिभाषित किया गया है।
CREATE TABLE`all_data_types` (`varchar` VARCHAR( 20 ) ,`tinyint` TINYINT ,`text` TEXT ,`date` DATE ,`smallint` SMALLINT ,`mediumint` MEDIUMINT ,`int` INT ,`bigint` BIGINT ,`float` FLOAT( 10, 2 ) ,`double` DOUBLE ,`decimal` DECIMAL( 10, 2 ) ,`datetime` DATETIME ,`timestamp` TIMESTAMP ,`time` TIME ,`year` YEAR ,`char` CHAR( 10 ) ,`tinyblob` TINYBLOB ,`tinytext` TINYTEXT ,`blob` BLOB ,`mediumblob` MEDIUMBLOB ,`mediumtext` MEDIUMTEXT ,`longblob` LONGBLOB ,`longtext` LONGTEXT ,`enum` ENUM( '1', '2', '3' ) ,`set` SET( '1', '2', '3' ) ,`bool` BOOL ,`binary` BINARY( 20 ) ,`varbinary` VARBINARY( 20 )) ENGINE= MYISAM ;
सर्वोत्तम प्रथाएं
- एसक्यूएल कीवर्ड के लिए ऊपरी केस लेटर्स का उपयोग करें "" DROP SCHEMA IF EXISTS `MyFlixDB`;"
- सेमी कॉलन का उपयोग करके अपने सभी एसक्यूएल कमांड को समाप्त करें।
- स्कीमा, तालिका और फ़ील्ड नामों में रिक्त स्थान का उपयोग करने से बचें। स्कीमा, तालिका या फ़ील्ड नामों को अलग करने के बजाय अंडरस्कोर का उपयोग करें।
MySQL कार्यक्षेत्र ईआर आरेख आगे इंजीनियरिंग
MySQL कार्यक्षेत्र में उपयोगिताओं हैं जो आगे इंजीनियरिंग का समर्थन करती हैं। फॉरवर्ड इंजीनियरिंग एक तकनीकी शब्द है जो एक तार्किक मॉडल को स्वचालित रूप से भौतिक कार्यान्वयन में बदलने की प्रक्रिया का वर्णन करता है ।
हमने अपने ईआर मॉडलिंग ट्यूटोरियल पर ईआर आरेख बनाया। अब हम उस ER मॉडल का उपयोग SQL स्क्रिप्ट बनाने के लिए करेंगे जो हमारा डेटाबेस बनाएगी।
MyFlix ER मॉडल से MyFlix डेटाबेस बनाना
1. MyFlix डेटाबेस के ईआर मॉडल को खोलें जिसे आपने पहले ट्यूटोरियल में बनाया था।
2. डेटाबेस मेनू पर क्लिक करें। आगे इंजीनियर का चयन करें
3. अगली विंडो, आपको MySQL सर्वर के एक इंस्टेंस से कनेक्ट करने की अनुमति देती है। संग्रहीत कनेक्शन ड्रॉप डाउन सूची पर क्लिक करें और स्थानीय होस्ट चुनें। निष्पादित करें पर क्लिक करें
4. दिखाई देने वाले विज़ार्ड में नीचे दिखाए गए विकल्पों का चयन करें। अगला पर क्लिक करें
5. अगली स्क्रीन हमारे ईईआर आरेख में वस्तुओं का सारांश दिखाती है। हमारे MyFlix DB में 5 टेबल हैं। चयनों को डिफ़ॉल्ट रखें और अगला क्लिक करें।
6… नीचे दिखाई गई विंडो दिखाई देती है। यह विंडो आपको हमारे डेटाबेस को बनाने के लिए SQL स्क्रिप्ट का पूर्वावलोकन करने की अनुमति देती है। हम स्क्रिप्ट को * .sql "फ़ाइल में सहेज सकते हैं या स्क्रिप्ट को क्लिपबोर्ड पर कॉपी कर सकते हैं। अगले बटन पर क्लिक करें
7. चयनित MySQL सर्वर इंस्टेंस पर डेटाबेस को सफलतापूर्वक बनाने के बाद नीचे दिखाई गई विंडो दिखाई देती है।
सारांश
- डेटाबेस बनाने में तार्किक डेटाबेस डिज़ाइन मॉडल का भौतिक डेटाबेस में अनुवाद करना शामिल है।
- MySQL सांख्यिक, दिनांक और स्ट्रिंग मानों के लिए कई प्रकार के डेटा प्रकारों का समर्थन करता है।
- एक डेटाबेस बनाने के लिए CREAT DATABASE कमांड का उपयोग किया जाता है
- क्रिएट टेबल कमांड का उपयोग किसी डेटाबेस में टेबल बनाने के लिए किया जाता है
- MySQL कार्यक्षेत्र आगे इंजीनियरिंग का समर्थन करता है जिसमें तार्किक डेटाबेस मॉडल से स्वचालित रूप से SQL स्क्रिप्ट उत्पन्न करना शामिल है जिसे भौतिक डेटाबेस बनाने के लिए निष्पादित किया जा सकता है
डमी डेटा के साथ डेटाबेस संलग्न है। हम अपने सभी ट्यूटोरियल के लिए इस DB का उपयोग करेंगे। आरंभ करने के लिए MySQL कार्यक्षेत्र में DB को सरल आयात करें
MyFlixDB डाउनलोड करने के लिए यहां क्लिक करें