1

7 行目で構文エラーが発生します - "BEGIN" for while -

 BEGIN
        IF EXISTS(SELECT 1 from table1)
        THEN
            IF EXISTS(SELECT 1 from table2)
            THEN
            WHILE EXISTS(SELECT 1 FROM table3)
            BEGIN
                BEGIN TRANSACTION;

                COMMIT TRANSACTION;
            END
            END IF;
        END IF;
    END

提案や指針はありますか?

4

1 に答える 1

1

問題は@Michaelが指摘したように、T-SQLとWATCOM-SQLという2つの異なるタイプの方言があり、残りのWatcom-SQL構文と互換性があるように、Watcom-SQL構文のwhileループを書き直す必要がありました-

BEGIN
        IF EXISTS(SELECT 1 from table1)
        THEN
            IF EXISTS(SELECT 1 from table2)
            THEN
            WHILE EXISTS(SELECT 1 FROM table3) LOOP
            BEGIN
                BEGIN TRANSACTION;

                COMMIT TRANSACTION;
            END LOOP;
            END IF;
        END IF;
    END
于 2013-10-21T18:20:32.417 に答える