日期可选。因此,如果它为空,我想将其另存为null。通常,当我从MSQL服务器程序输入NULL时,它将被接受。但是编码不会发生这种情况。我应用了以下方法。但是必须有一个更简单的方法。如果有人知道,我会很高兴。
try {
Harcama u = (Harcama) t; // t yi Uye formatına çevirdim
Session session = sessionFactory.openSession();
Transaction transaction = session.beginTransaction();
if (u.getBitis()==null) {
SQLQuery insertQuery = session.createSQLQuery(
"INSERT INTO Harcama(turId,altId,basl,nott,harcananTL)VALUES(?,?,?,?,?)");
insertQuery.setParameter(0, u.getTurId());
insertQuery.setParameter(1, u.getAltId());
insertQuery.setParameter(2, u.getBasl());
insertQuery.setParameter(3, u.getNott());
insertQuery.setParameter(4, u.getHarcananTl());
insertQuery.executeUpdate();
session.getTransaction().commit();
sonuc=true;
Gnl.MesajVer.Sonuc("Kayıt ekleme işlemi başarı ile Tamamlandı");
}else{
SQLQuery insertQuery = session.createSQLQuery(
"INSERT INTO Harcama(turId,altId,basl,bitis,nott,harcananTL)VALUES(?,?,?,?,?,?)");
insertQuery.setParameter(0, u.getTurId());
insertQuery.setParameter(1, u.getAltId());
insertQuery.setParameter(2, u.getBasl());
insertQuery.setParameter(3, u.getBitis());
insertQuery.setParameter(4, u.getNott());
insertQuery.setParameter(5, u.getHarcananTl());
insertQuery.executeUpdate();
session.getTransaction().commit();
sonuc=true;
Gnl.MesajVer.Sonuc("Kayıt ekleme işlemi başarı ile Tamamlandı");
}