We are replicating a website back-end database between two quite remote servers and all had been going well until we actually threw the unwashed public at the site hanging off the subscriber today. For a while all was well but then started getting this error: <br /><br />The row was not found at the subscriber when applying the replicated command. (Error 2059<img src='/community/emoticons/emotion-11.gif' alt='8)' /><br /><br />Now my understanding of this is that it is caused by changes (deletes specifically) of rows on the subscriber end. Now we have an seperate updates DSN pointing back at the publishing server but there is the small chance that there is something sitting in the web application which will try to update the database.<br /><br />What I'd like to do is guarantee that any attempt to update from this application will fail and an error be returned.<br /><br />The application is using a particular SQL user account and I have disabled db_datawriter for that account, leaving just db_datareader. Now here is the problem however - I also have a custom role db_executor with EXECUTE permission as we make extensive use of stored procedures for both reading and writing, so I am concerned that there may be some page that will execute one of the write SPs.<br /><br />Any guidance on what to do here would be much appreciated.