2013-12-26 6 views
0

Я использую Sqlite, и я узнал, что INSERT не возвращает только что вставленную запись с автоматически созданным первичным ключом.Использовать результат запроса с единственным результатом в SELECT

Чтобы решить эту проблему, я узнал, что могу использовать SELECT last_insert_rowid(). Это возвращает значение, которое мне нужно.

Мне нужно это значение, чтобы обновить поле в записи моей базы данных.

Есть ли способ, которым я мог бы сформировать запрос SELECT, который имеет результат этого встроенного запроса?

UPDATE events SET url='query executed' WHERE eventId = <value of above query should come here> 
+0

Необходимо проявлять осторожность: вы должны выполнять обе команды внутри одной транзакции, или вы можете получить поврежденную базу данных! –

+0

На каком языке вы используете для доступа к базе данных? –

ответ

2

Если SELECT last_insert_rowid() возвращает значение, которое нужно затем поместить его туда в качестве подзапроса. Подзапрос должен быть в (your_subquery) скобках.

+0

Это был ответ. Это выглядит совершенно очевидно. Большое спасибо! :) –

Смежные вопросы