0
Итак, вот код, который я пытаюсь выполнить.Sqlite case statement радости
begin transaction;
SELECT [version] as ver FROM [dbinfo];
WHEN ver = 1 THEN
UPDATE [dbinfo] SET [version]=2;
ver = 2;
ALTER TABLE [cards] ADD COLUMN [alternate] TEXT NOT NULL;
END
WHEN ver = 2 THEN
UPDATE [dbinfo] SET [version]=3;
ver = 3;
ALTER TABLE [cards] ADD COLUMN [dependent] TEXT NOT NULL;
ALTER TABLE [cards] ADD COLUMN [mutable] BOOLEAN;
END
commit transaction;
Не работает. Получается застрял на WHEN
. Я пробовал также CASE WHEN
и пару других различных методов. Мне нужно пройти через ver
от ver
с этим, так что любые идеи о том, как сделать что-то вроде этой работы для Sqlite? Спасибо.
Что не работает? что вы ожидаете от этого? – Randy
Это sqlite, я думаю? Я ожидаю, что он выберет текущую dbinfo.version, затем внесут изменения, обновит dbinfo.version, а затем перейдем к следующему изменению. –
Я предполагаю, что в практических терминах я хотел бы закончить, а затем перезапустить транзакцию между каждым оператором WHEN', но они все равно не работают. –