Собственно можно ли в SQL-выражении для работы с SQLite объявлять локальные переменные ?
Вопрос возник в связи с переносом базы с MS-SQL на SQLite 3.
Есть SQL выражение которое никак не могу перенести на SQLite 3
-- извлекаем из базы прежнее значение поля Doctype
declare @tempDoctype int;
SELECT @tempDoctype = Doctype
FROM dbo.tContracts
WHERE id = @contract_id
/* здесь обновляются данные tContracts*/
-- определяем Тип операции по изменению значения поля Doctype
-- @docType - новое значение
-- @tempDoctype - прежнее значение, хранившееся в базе
declare @operationType int;
if((@tempDoctype = 2) and (@docType != 2))
set @operationType = 11;
else if((@tempDoctype != 2) and (@docType = 2))
set @operationType = 13;
else set @operationType = 3;
-- вносим в LOG сведения о произведенной операции
INSERT INTO dbo.tOperationLog
(idOperation, idDataRecord, idUser, date)
VALUES (@operationType, @contract_id, @registrator_id, GETDATE())
Ищу аналог
declare для SQLite.
Может быть я криво читаю доки, но похоже декларирование локальных переменных в SQLite не поддерживается.
Кто-нибудь может посоветовать решение ?