oracle sql語法問題,爲什麽這個sql不正確呢?

insert into TERMINAL_INFO (TERMINAL_ID,DEVICE_ID,TAGMODEL_ID)
        (
            <foreach collection="list" item="item" index="index" separator="union all">
                select
                #{item.terId},
                #{item.deviceId},
                #{item.tagId}
                FROM dual
            </foreach>
        )

爲什麽一直在報sql命令未正確結束

你既然要插入数据,为什么遍历那里用select语句呢?