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 ইনজেকশন থেকে রক্ষা পাওয়া যায়।