Привет, ребята. Я уже выбился из сил и никак не могу найти решение для простой казалось бы задачи. Делал задание на фрилансе (SQL+PHP) и попал в небольшой просак. В общем есть код, который добавляет/изменяет строку в базе данных, все просто. Но оказалось, в последний момент, что у заказчика используется PostgreSQL в то время, как я делал все под MySQL. И теперь я не могу подогнать их под его нужды. В чем может быть проблема в этом запросе ниже? ОШИБКА: столбец "IGSTP" не существует LINE 1: DELETE FROM stock WHERE user_id = 2 AND exchange = "IGSTP" DELETE FROM stock WHERE user_id = 2 AND exchange = "IGSTP" при том что это значение 100% есть в базе, но оно его почему-то считает за столбец?
Потому что в SQL строки ограничиваются одинарными кавычками. А двойными - эскейпятся названия таблиц и полей.
Обратные - только MySQL. В ANSI SQL не так, я не зря написал "в SQL". Если в MySQL включить режим совместимости с ANSI SQL, то тоже будет такое поведение. PostgreSQL тут соответствует ansi.