बैकटिक (`) से स्पेस वाले टेबल नाम बनाएं
MySQL में टेबल या कॉलम नाम में स्पेस होने पर उसे बैकटिक (`) में घेरना आवश्यक है, अन्यथा सिंटैक्स त्रुटि होगी।
बिना बैकटिक के त्रुटि
mysql> CREATE TABLE Demo Table (
Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
EmployeeFirstName VARCHAR(20)
);
ERROR 1064 (42000): You have an error in your syntax...
बैकटिक के साथ सही सिंटैक्स
mysql> CREATE TABLE `Demo Table37` (
Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
EmployeeFirstName VARCHAR(20),
EmployeeLastName VARCHAR(20),
EmployeeAge INT,
EmployeeSalary INT,
EmployeeAddress VARCHAR(200)
);
Query OK, 0 rows affected (0.66 sec)
उपयोग करते समय भी बैकटिक आवश्यक
INSERT INTO `Demo Table37` (...) VALUES(...);
SELECT * FROM `Demo Table37`;
DROP TABLE `Demo Table37`;
बैकटिक नियम
- पहचानकर्ता (टेबल, कॉलम, डेटाबेस, इंडेक्स, एलियास) के लिए उपयोग करें
- डबल कोट्स (
") SQL मोडANSI_QUOTESसक्षम होने पर ही काम करते हैं - सिंगल कोट्स (
') स्ट्रिंग लिटरल के लिए हैं, पहचानकर्ता के लिए नहीं
सर्वोत्तम अभ्यास
- स्पेस से बचें:
demo_table,demoTable, याDemoTableउपयोग करें - यदि स्पेस आवश्यक है, तो हमेशा बैकटिक उपयोग करें
- सभी पहचानकर्ताओं के लिए लगातार बैकटिक उपयोग करने की आदत डालें
अन्य विशेष वर्ण
बैकटिक के साथ आप अन्य विशेष वर्ण भी उपयोग कर सकते हैं:
CREATE TABLE `my-table` (id INT);
CREATE TABLE `123table` (id INT);
CREATE TABLE `table@name` (id INT);
लेकिन इनसे बचना ही बेहतर है।