Oi Rodrigo, tudo bom?
Pela query:
string(135) "insert into produtos (nome, preco, descricao, categoria_id, usado) values ('ford ka', 2000, 'ford ka usado', 3, )",
Parece que está faltando o ultimo campo, usado. Provavelemnte esse campo é booleano e ao imprimir um boolean false o php representa como string vazia. Verifica se no banco de dados esse campo possui um valor padrão definido ou verifica o texto antes de jogar pro banco no PHP =)
O update segue a mesma lógica.
De qualquer forma, esse pode não ser seu problema no final das contas haha Se você quiser, compartilha com a gente seu código assim fica mais fácil encontrar possíveis causas.
Rola algum erro quando você tenta atualizar? Compartilha com a gente os erros também.
Abraço