हम MySQL में एपोस्ट्रोफी (') को निम्नलिखित दो तरीकों से एस्केप कर सकते हैं:
- बैकस्लैश (\) का उपयोग करके
- सिंगल कोट को दो बार लिखकर (डबल कोटेड)
बैकस्लैश का उपयोग करना
आइए पहले एक टेबल बनाते हैं।
mysql> create table SingleQuotesDemo -> ( -> id int, -> name varchar(100) -> ); Query OK, 0 rows affected (1.16 sec)
"John's" नाम के लिए सीधा उपयोग वांछित परिणाम नहीं देता।
mysql> insert into SingleQuotesDemo values(1,'John's'); '>
आइए अब बैकस्लैश का उपयोग करते हैं।
mysql> insert into SingleQuotesDemo values(1,'John\'s'); Query OK, 1 row affected (0.19 sec)
अब हम रिकॉर्ड्स प्रदर्शित करेंगे।
mysql> select *from SingleQuotesDemo;
यहां आउटपुट है, जो दर्शाता है कि हमने बैकस्लैश को सही ढंग से लागू किया है।
+------+--------+ | id | name | +------+--------+ | 1 | John's | +------+--------+ 1 row in set (0.00 sec)
डबल कोट्स का उपयोग करना
डबल कोट्स का उपयोग करके बैकस्लैश लागू करने का सिंटैक्स निम्नलिखित है। हम ऊपर उपयोग की गई उसी टेबल में एक और रिकॉर्ड डाल रहे हैं।
mysql> insert into SingleQuotesDemo values(2,'John''s'); Query OK, 1 row affected (0.18 sec)
अब, हम रिकॉर्ड्स प्रदर्शित करेंगे।
mysql> select *from SingleQuotesDemo;
निम्नलिखित आउटपुट है।
+------+--------+ | id | name | +------+--------+ | 1 | John's | | 2 | John's | +------+--------+ 2 rows in set (0.00 sec)
उपरोक्त संभावित तरीकों से, हम एपोस्ट्रोफी (') को एस्केप कर सकते हैं।
सर्वोत्तम अभ्यास: प्रीपेयर्ड स्टेटमेंट्स (Prepared Statements) का उपयोग करना SQL इंजेक्शन से बचने और एस्केपिंग समस्याओं को स्वचालित रूप से संभालने का सबसे सुरक्षित तरीका है।