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

MySQL में बैकटिक्स से संख्यात्मक नाम वाला डेटाबेस बनाएं

MySQL में डेटाबेस नाम संख्या से शुरू हो या केवल संख्या हो तो बैकटिक्स (`) से घेरना आवश्यक है, अन्यथा सिंटैक्स त्रुटि (ERROR 1064) होती है।

समस्या

mysql> CREATE DATABASE 1233;
ERROR 1064 (42000): You have an error in your SQL syntax near '1233' at line 1

समाधान: बैकटिक्स उपयोग करें

mysql> CREATE DATABASE `1233`;
Query OK, 1 row affected

उपयोग

mysql> USE `1233`;
Database changed

पहचानकर्ता उद्धरण नियम

स्थितिबैकटिक्स आवश्यक?उदाहरण
संख्या से शुरूहां`123db`
केवल संख्याहां`1233`
आरक्षित शब्दहां`order`, `select`
विशेष वर्णहां`my-table`, `my table`
सामान्य नामनहीं (लेकिन अनुशंसित)mydb या `mydb`

सर्वोत्तम अभ्यास

  • हमेशा पहचानकर्ताओं के लिए बैकटिक्स उपयोग करें
  • संख्यात्मक या आरक्षित शब्द नाम टालें
  • अर्थपूर्ण, वर्णनात्मक नाम चुनें

ANSI SQL मोड

SET SQL_MODE = 'ANSI_QUOTES';
-- फिर डबल कोट्स उपयोग कर सकते हैं
CREATE DATABASE "1233";

लेकिन यह डबल कोट्स को स्ट्रिंग लिटरल के लिए अक्षम कर देता है।

संबंधित: टेबल/कॉलम नाम

CREATE TABLE `1233`.`mytable` (`id` INT, `select` VARCHAR(20));
SELECT `id`, `select` FROM `1233`.`mytable`;
  1. MySQL Workbench में नया डेटाबेस कैसे बनाएं? MySQL Workbench में नया डेटाबेस कैसे बनाएं?

    MySQL Workbench GUI से डेटाबेस बनाएं MySQL Workbench एक ग्राफिकल इंटरफ़ेस प्रदान करता है नया डेटाबेस (स्कीमा) बनाने के लिए बिना SQL लिखे। चरण-दर-चरण प्रक्रिया MySQL Workbench लॉन्च करें सर्वर से कनेक्ट करें: Database → Connect to Database (Ctrl+U) कनेक्शन चुनें, पासवर्ड दर्ज करें, OK दबाए

  1. - MySQL में & को एम्परसैंड (&) से कैसे बदलें

    REPLACE() फंक्शन के साथ HTML एंटिटी को वास्तविक अक्षर में बदलना डेटाबेस में संग्रहीत HTML एंटिटी & को वास्तविक एम्परसैंड & में बदलने के लिए REPLACE() फंक्शन का उपयोग करें। टेबल और डेटा CREATE TABLE DemoTable( Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, Value VARCHAR(100) ); Que

  1. - MySQL 8.0 में 'rank' आरक्षित शब्द: कॉलम नाम के लिए बैकटिक्स आवश्यक

    MySQL 8.0.2 से RANK एक आरक्षित शब्द (reserved word) है क्योंकि विंडो फ़ंक्शन RANK() जोड़ा गया। इसे कॉलम नाम के रूप में उपयोग करने के लिए बैकटिक्स (`) आवश्यक हैं। समस्या ); ERROR 1064 (42000): You have an error in your SQL syntax near rank int at line 5 समाधान: बैकटिक्स उपयोग करें ); Query OK डे