Erro data truncation

Olá, bom dia! Tudo bem?
Estou com um erro ao salvar a data no meu banco de dados. Estou desenvolvendo uma aplicação para agendamento de consultas.

Erro: mysqldatatruncation data truncation: incorrect date value: ´d´de´mmm’de’y’ for colum dbconsultorio: ´agendamento´, data at row 1

Código:

DateFormat df = new SimpleDateFormat(“YYYY-MM-DD”);

    DefaultTableModel modelo = (DefaultTableModel) tableAgendamentos.getModel();
    //A linha abaixo seleciona os objetos da tabela //Object vem do tipo de Objeto que foi escolhido na tabela
    Object[] dados = {txtIDAgenda.getText(),
        txtNomeAgenda.getText(),
        txtEmailAgenda.getText(),
        ComboBoxProcedimentos.getSelectedItem(),
        ComboBoxSexo.getSelectedItem(),
        txtTelefone.getText(),
        txtHoraAgenda.getText(),
        df.format(txtDataDoAgendamento.getDate()),
        txtValorAgenda.getText(),
        txtObservacoesAgenda.getText()};

    modelo.addRow(dados);

    limparAgendamento();

A aplicação está sendo desenvolvida na IDE Netbeans e estou utilizando o Xampp como genreciador de banco de dados pHpMyAdmin.

A mensagem de erro diz que o valor que você está tentando passar para a coluna agendamento não é uma data válida. Provavelmente o formato está incorreto, seja para a função format, seja ao manda pro banco.

Confira o que

txtDataDoAgendamento.getDate()

está retornando, pra ver se é o caso. Veja se é um valor válido para o df.format()

Abraço.

Posta o código onde você está salva essa data.

Classe Agendamento

package Agendamento;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
*

  • @author JANDERSON
    */
    public class Agendamento {

    private int id;
    private String nome;
    private String email;
    private String procedimentos;
    private String telefone;
    private String sexo;
    private String hora;
    private Date data;
    private String valor;
    private String observacoes;

    public Agendamento(String data) {

     try {
         this.data = new SimpleDateFormat("dd/MM/yyyy").parse(data);
     } catch (ParseException ex) {
         Logger.getLogger(Agendamento.class.getName()).log(Level.SEVERE, null, ex);
     }
    

    }

    Agendamento() {
    throw new UnsupportedOperationException(“Not supported yet.”); // Generated from nbfs://nbhost/SystemFileSystem/Templates/Classes/Code/GeneratedMethodBody
    }

    public int getId() {
    return id;
    }

    public void setId(int id) {
    this.id = id;
    }

    public String getNome() {
    return nome;
    }

    public void setNome(String nome) {
    this.nome = nome;
    }

    public String getEmail() {
    return email;
    }

    public void setEmail(String email) {
    this.email = email;
    }

    public String getProcedimentos() {
    return procedimentos;
    }

    public void setProcedimentos(String procedimentos) {
    this.procedimentos = procedimentos;
    }

    public String getTelefone() {
    return telefone;
    }

    public void setTelefone(String telefone) {
    this.telefone = telefone;
    }

    public String getSexo() {
    return sexo;
    }

    public void setSexo(String sexo) {
    this.sexo = sexo;
    }

    public String getHora() {
    return hora;
    }

    public void setHora(String hora) {
    this.hora = hora;
    }

    public Date getData() {
    return data;
    }

    public void setData(Date data) {
    this.data = data;
    }

    public String getValor() {
    return valor;
    }

    public void setValor(String valor) {
    this.valor = valor;
    }

    public String getObservacoes() {
    return observacoes;
    }

    public void setObservacoes(String observacoes) {
    this.observacoes = observacoes;
    }
    }

Botão Salvar

try {
Cadastrar();
} catch (Exception ex) {
// Logger.getLogger(CadClientes.class.getName()).log(Level.SEVERE, null, ex);
}
}

private boolean validaCamposObrigatorios() {
    return (txtNomeAgenda.getText().equals("")
            || txtEmailAgenda.getText().equals(""));
}

private void Cadastrar() throws Exception {
    if (validaCamposObrigatorios()) {
        JOptionPane.showMessageDialog(null, "Preencha todos os campos antes de gravar!!");
    } else {
        Agendamento agendamento = new Agendamento(data);
        AgendamentoDao agendamentodao = new AgendamentoDao();
        agendamento.setNome(txtNomeAgenda.getText());
        agendamento.setEmail(txtEmailAgenda.getText());
        agendamento.setProcedimentos((String) ComboBoxProcedimentos.getSelectedItem());
        agendamento.setTelefone(txtTelefone.getText());
        agendamento.setSexo((String) ComboBoxSexo.getSelectedItem());
        agendamento.setHora(txtHoraAgenda.getText());
        agendamento.setData(txtDataDoAgendamento.getDate());
        agendamento.setValor(txtValorAgenda.getText());
        agendamento.setObservacoes(txtObservacoesAgenda.getText());

        agendamentodao.adicionar(agendamento);
        // Limpe os campos de texto após a atualização
        txtNomeAgenda.setText("");
        txtEmailAgenda.setText("");
        ComboBoxProcedimentos.setSelectedItem("");
        txtTelefone.setText("");
        ComboBoxSexo.setSelectedItem("");
        txtHoraAgenda.setText("");
        txtDataDoAgendamento.setDateFormatString("");
        txtValorAgenda.setText("");
        txtObservacoesAgenda.setText("");
    }

Consegui resolver! Eu coloquei o construtor vazio. A unica coisa que ficou nivertida no meu banco, foi a data mesmo. Que ficou 2024-07-10 ao inves de 10-07-2024.

//construtor
public Agendamento() {
}