Не мога да вмъкна апострофи в MySQL

MySQL изисква внимателно обработване на текста за обработка на апострофите.

Апострофен разделител

В SQL версията на MySQL, началото и края на низ са обозначени с единични кавички или двойни кавички. Прилагат се следните два примера:

ВЪВЕЖДАНЕ В COMPANY_TABLE (име на фирма) VALUES "The Fish Shack";

ВЪВЕЖДАНЕ В COMPANY_TABLE (име на фирма) VALUES "The Fish Shack";

Следващият пример обаче генерира грешка:

ВЗЕМЕТЕ В COMPANY_TABLE (tag_line) VALUES "Яжте на Джо - Това е добра храна!";

SQL интерпретира низа като "Яжте в Джо", "с всичко, което след втория апостроф е грешно. Следният текст не реши проблема:

ВЗЕМЕТЕ В COMPANY_TABLE (tag_line) VALUES "Яжте в Джо - Това е добра храна!";

Това би станало, ако текстът имаше само един апостроф между двойните кавички, но този текст имаше два. Също така, тъй като някои езици за програмиране на уеб страници използват двойни кавички, може да не искате да ги използвате във вашия SQL.

Двойните апострофи и обърнатия бар

Решението се определя от MySQL, като интерпретира двете апострофи в един ред "като единичен цитат за данните за знаците. Използвайки символа за наклонена черта или "\", непосредствено преди апострофа в данните да има същия ефект. MySQL третира комбинацията от обратно наклонена черта и други специални знаци като последователност на бягство, създавайки символ от двете. Следните примери решават проблема:

Въведете в COMPANY_TABLE (tag_line) VALUES "Яжте в Joe's - Това е добра храна!";

ВЗЕМЕТЕ В COMPANY_TABLE (tag_line) VALUES "Яжте в Джо - Това е добра храна!";

Когато пишете програми за създаване на изречения в MySQL, първото нещо, което трябва да направите, е да изследвате всички текстови низове и да добавите апостроф или обратно наклонена черта преди апострофите в данните.

Функция Addslashes

PHP PHP езикът за програмиране често се използва в комбинация с MySQL, това има функция, наречена addslashes за автоматично конвертиране на апострофи. Просто изпълнете функцията на данните за типа си низ както в този пример:

$ tag_line = добавки ($ tag_line);

Функцията за струнни ленти

След като сте преобразували апострофи към променливите данни на обратна наклонена черта и апострофи, може да се наложи да преобразувате обратно до нормални данни. Функцията PHP stripslashes изпълнява тази задача в една стъпка. Използвайте го като следния пример:

$ tag_line = ленти с ленти ($ tag_line);