Ошибка с типами реально убивает код, особенно если не включить строгую типизацию — потом фиг разберёшься, где строка, а где число. А вот с SQL проще: прямые запросы — это как оставить дверь нараспашку, подготовленные запросы хоть какую-то защиту дают и сделали код чище.