I don't think that "issuing a warning" maps to any DDL result. The alternatives are fail and succeed. The SQLite API has no support for anything in between. The errors thrown are pretty clear, and are enough to suggest what index(es) need to be dropped before a retry. Dropping an index seems a bit much to me. If it is possible, I prefer to write DDL sequences that leave a DB in a self-consistent state. I much prefer that the DBMS yap at me when I deviate.