Я хочу использовать переменную в моем запросе для sqlite, но я не знаю, как это сделать?
мои друзья, я хочу выполнить один запрос, но этот запрос состоит из двух частей:
первая часть Я хочу получить несколько значений, подобных этому <178,180,200,300>. Я получил это от этого запроса:
и вторая часть Я хочу использовать любые эти значения для этого запроса одной переменной:
теперь я хочу получить любое значение из второго запроса, связанного с первым запросом.
Я хочу объявить переменную в sqlite и использовать ее в операции вставки
например, мне нужно будет получить last_insert_row и использовать его в insert
Я нашел что-то о привязке, но я не полностью понял
4 ответов
SQLite не поддерживает собственный синтаксис переменных, но вы можете добиться практически того же, используя временную таблицу в памяти.
я использовал ниже подход для больших проектов и работает как шарм.
решение Германа работает, но его можно упростить, потому что Sqlite позволяет хранить любой тип значения в любом поле.
вот более простая версия, которая использует один
решение Германа сработало для меня, но . меня немного перепутали. Я включаю демо, которое я разработал на основе его ответа. Дополнительные функции в моем ответе включают поддержку внешнего ключа, автоматическое увеличение ключей и использование last_insert_rowid() функция для получения последнего автоматически сгенерированного ключа в транзакции.
моя потребность в этой информации возникла, когда я нажал транзакцию, которая требовала трех внешних ключей, но я мог получить только последний с last_insert_rowid() .
попробуйте использовать значения привязки. Вы не можете использовать переменные, как в T-SQL, но вы можете использовать "параметры". Надеюсь, следующая ссылка будет полезной.Значения Привязки
Как заменить еденицы на переменные?
1 ответ 1
Если я правильно понимаю то это должно быть так(описание execute):
Всё ещё ищете ответ? Посмотрите другие вопросы с метками python sql python-3.x sqlite python-3.5 или задайте свой вопрос.
Похожие
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
дизайн сайта / логотип © 2020 Stack Exchange Inc; пользовательское содержимое попадает под действие лицензии cc by-sa 4.0 с указанием ссылки на источник. rev 2020.1.17.35809