उत्तर
नहीं, आप MySQL टेबल के लिए सीधे "user" शब्द का उपयोग नहीं कर सकते क्योंकि यह MySQL में एक आरक्षित शब्द (reserved word) है। MySQL की सिस्टम टेबल mysql.user मौजूद है।
समाधान
- बहुवचन उपयोग करें:
users(सबसे आम और अनुशंसित) - बैकटिक्स उपयोग करें:
`user`(काम करता है लेकिन भ्रमित कर सकता है) - वर्णनात्मक नाम:
app_users,accounts,members
उदाहरण: 'users' टेबल बनाना
mysql> CREATE TABLE users (
-> UserId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> UserName VARCHAR(20),
-> UserAge INT
-> );
Query OK, 0 rows affected (0.51 sec)
डेटा डालना
mysql> INSERT INTO users(UserName, UserAge) VALUES('Chris Brown', 28);
Query OK, 1 row affected (0.17 sec)
mysql> INSERT INTO users(UserName, UserAge) VALUES('John Doe', 31);
Query OK, 1 row affected (0.18 sec)
mysql> INSERT INTO users(UserName, UserAge) VALUES('John Smith', 26);
Query OK, 1 row affected (0.17 sec)
mysql> INSERT INTO users(UserName, UserAge) VALUES('David Miller', 27);
Query OK, 1 row affected (0.13 sec)
सभी रिकॉर्ड देखना
mysql> SELECT * FROM users;
आउटपुट:
+--------+--------------+---------+
| UserId | UserName | UserAge |
+--------+--------------+---------+
| 1 | Chris Brown | 28 |
| 2 | John Doe | 31 |
| 3 | John Smith | 26 |
| 4 | David Miller | 27 |
+--------+--------------+---------+
4 rows in set (0.00 sec)
यदि आप `user` उपयोग करना ही चाहते हैं
CREATE TABLE `user` (
UserId INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
UserName VARCHAR(20),
UserAge INT
);
INSERT INTO `user` (UserName, UserAge) VALUES('Test', 25);
SELECT * FROM `user`;
हर क्वेरी में बैकटिक्स आवश्यक: SELECT * FROM `user`, INSERT INTO `user` ...
आरक्षित शब्दों की सूची (आंशिक)
USER, SELECT, INSERT, UPDATE, DELETE, CREATE, DROP,
ALTER, INDEX, KEY, PRIMARY, UNIQUE, FOREIGN, REFERENCES,
TABLE, DATABASE, VIEW, TRIGGER, PROCEDURE, FUNCTION,
ORDER, GROUP, BY, WHERE, FROM, JOIN, LEFT, RIGHT,
INNER, OUTER, UNION, LIMIT, OFFSET, ...
सर्वोत्तम अभ्यास
- आरक्षित शब्दों को पहचानकर्ता के रूप में उपयोग करने से बचें
- बहुवचन टेबल नाम:
users,orders,products - एकवचन कॉलम नाम:
username,email,created_at - हमेशा बैकटिक्स उपयोग करें पहचानकर्ताओं के लिए
users सबसे स्पष्ट, मानक, और समस्या-मुक्त विकल्प है।