If I have a database dependent external process then I usually use a trigger to insert records into a logging table or tables.
For example, a new page gets published in a CMS so all subscribers should get an e-mail.
The trigger captures the publishing process and writes the page id to my logging table. End of trigger.
An scheduled external process does a SELECT TOP n from my logging table and sends batches of e-mail.
This achieves two things.