Help understanding database design logic for a secondhand bookstore project in MySQLI would think that if this is an online system (registration by email suggests that), all buyers must be users. Even Amazon used to create anon user accounts if buying without logging in. As for the other types of users, that's what refactoring is for (eg: add a user_type column.) No point designing for what you might never use, you're bound to miss a future use case and end up having to refactor regardless.

Single DELETE statement deadlocking in Sybase ASEThe default, it should be Read Committed for this server. I can double-check it later, if you think that makes a difference. There's only the implicit transaction though, so I would have thought all transaction levels above Read Uncommitted would behave the same way.