Привет всем, что вы mysql и perl гуру!mysql и perl - добавление переменной в запрос
У меня есть код, который выглядит как $ магазин = QQ (INSERT INTO основной (RELEASE_DATE) VALUES (DATE_ADD (NOW(), ИНТЕРВАЛ 1 день))
Он отлично работает. Проблема в том, мне нужно найти способ использовать переменную вместо «INTERVAL 1 DAY». Это значение поступает из формы и имеет около 12 вариантов (например: 1 день, 2 дня, 1 неделя, 2 недели).
Я сейчас используя 12 различных условий if/elsif, основанных на переменных формы, поэтому код сейчас очень громоздкий.
Я пытаюсь получить что-то вроде этого для работы var timeframe = ""; if ($ data {date_field} == "1 Week") { $ timeframe = "1 WEEK"; } . . $ магазин = QQ (INSERT INTO основной (RELEASE_DATE) VALUES (DATE_ADD (NOW(), ИНТЕРВАЛ "$ таймфрейм"))
Но ошибки, говоря, у меня есть проблема синтаксиса MySQL.
Каждый знает, что Я должен сделать, чтобы получить эту работу, так что я могу сократить код немного
Возможно, проблема заключается в котировках. Я бы попытался удалить кавычки примерно с $ time. Вы можете вывести значение хранилища перед его запуском? давайте посмотрим, что это. – user2932397
дубликат http://stackoverflow.com/questions/10659737/how-can-i-use-a-query-with-placeholder-inside-quotes-perl-postgresql – KeepCalmAndCarryOn
Я настоятельно рекомендую вам прислушаться к советам в предыдущем вопрос * использовать заполнители * в вашем SQL-заявлении и делать 'готовят' только один раз. – Borodin