I am not aware of any database table design that will tell if the system will be “dead lock” proof. Avoiding “deadlock” is more a function of the particular database system – Oracle, DB2, SQL and the resources available (pool, cache, threads, memory), number of users, etc. Check with the particular DBMS (database management system) vendor.
There is no way to design a table to be deadlock proof. A deadlock occures when one transaction locks a resource, then another query tried to access the resource creating a block. When the first query tries to access the resource a second time a deadlock occurs and the engine will rollback one of the queries.
This is a very simple example of a deadlock. Deadlocks can occur over several tables as well.