Hsqldb rownum в выражении UPDATE
Привет, у меня проблема с этим запросом:
обновить EXAMPLETABLE установить FLAG = 1, где FLAG = 0 и rownum < 10;
Этот запрос работает в Oracle (он обновляет ровно 9 строк), но не в моем тестовом примере с hsqldb (оператор обновляет ВСЕ строки в EXAMPLETABLE).
Я использую также SET DATABASE SQL SYNTAX ORA TRUE; в сценарии генерации hsqlDb. Я использую hsqlDb только в памяти.
Эта функция не реализована в hsqlDb?
Спасибо роберто
1 ответ
Эта функция не реализована в HSQLDB. Это может быть поддержано в режиме ORACLE в ближайшем будущем. (обновление: теперь поддерживается в 2.2.6 и более поздних версиях).
Есть принципиальная проблема с этим типом заявления. Поскольку строки могут быть возвращены в любом порядке, обновление выполняется для почти произвольного подмножества строк с заданным параметром FLAG.