Использование SQLite Мне нужно скопировать почти всю существующую строку из таблицы, внести изменения в один столбец и вставить новую строку в таблицу. Что-то примерно наподобиеSQLite: скопировать все значения из предыдущей строки с одной подстановкой
INSERT INTO $tablename (c1, c2, ... , cn)
SELECT (c1, c2, ... , cn) FROM $tablenam
Я попытался подставить некоторое значение ci в список столбцов SELECT. Это работает, если значение является float или integer, но не является строкой. Если значение представляет собой строку, SQLite интерпретирует ее как имя столбца, которая, естественно, не существует, и я получаю сообщение об ошибке.
Я могу написать код для выполнения этой операции, но я надеялся сделать это в одном запросе.
Если это актуальность, в настоящее время я кодирую в tcl.
Спасибо,
Шон
Как упоминалось в вопросе, это работает, если «othervalue» - это число, оно не работает, если «othervalue» является строкой, потому что SQLite интерпретирует строку как не- существующее имя столбца (я получаю «столбец« другое значение »не существует») – Sean
Спасибо. Все работает сейчас. Мне просто нужно было правильно избежать кавычек, чтобы они присутствовали в запросе. – Sean
Что происходит, когда строка othervalue содержит "или a"? Вы должны проверить это дело. – Theo