Nice starter list. Here's more, off the top of my head:
- failure to lock rows with pessimistic locking
- failure to consider optimistic locking when viable
- data sets within a table (undernormalization)
- too much duplicate app code that should be stored procedure
- overuse of stored procedures that should be in app code
- appending with insert
- appending to datasets with variable length
- "smart" keys that can never be changed without rewriting
- underuse of indexing to slow read performance
- overuse of indexing to slow update performance
- records too big for good hashing (undernormalization)
- columns with different typed data (when DBMS allows)
- columns with different logical data (app driven)
- enhancing by inserting columns instead of appending
- poor or missing audits
- poor or missing security
- poor or missing archiving