So immediately after posting this I realized that the only problem with the alert logic was the user implementing it. Even so, while you can scratch #2 from the list the other two suggestions would still be beneficial. Right now for this UnDP NPM is writing about 25 rows to the DB on every polling cycle and checking for a single response. Implementing either #1 or #3 would reduce this to at most 1 row for each poll.
Also in the original post I said it was a Get Next when it was obviously a Get Table .