Как исправить ошибку: "ERROR: invalid input syntax for type bigint: " af8dff03-7f64-42b5-b7b2-ab885cd3ab7f"?
У меня есть следующий кусок кода:
package com.example.demo;
import lombok.RequiredArgsConstructor;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;
import java.util.List;
import java.util.UUID;
@Repository
@RequiredArgsConstructor
public class ContactRepository {
private final JdbcTemplate jdbcTemplate;
public List<Contact> findAll() {
String query = "SELECT * FROM contact";
return jdbcTemplate.query(query, new ContactRowMapper());
}
public Contact findById(String id) {
String query = "SELECT * FROM contact WHERE id = '" + id + "'";
return jdbcTemplate.queryForObject(query, new ContactRowMapper());
}
public void save(Contact contact) {
String query = String.format("INSERT INTO contact (id, first_name, last_name, email, phone) VALUES (' %s ', ' %s ', ' %s ', ' %s ', ' %s ')", contact.getId(), contact.getFirstName(), contact.getLastName(), contact.getEmail(), contact.getPhone());
jdbcTemplate.update(query);
}
public void update(Contact contact) {
String query = String.format("UPDATE contact SET first_name = '%s', last_name = '%s', email = '%s', phone = '%s' WHERE id = '%s'", contact.getFirstName(), contact.getLastName(), contact.getEmail(), contact.getPhone(), contact.getId());
jdbcTemplate.update(query);
}
public void deleteById(String id) {
String query = String.format("DELETE FROM contact WHERE id = '%s'", id);
jdbcTemplate.update(query);
}
}
У меня воспроизводится ошибка формата:
ERROR: invalid input syntax for type bigint: " af8dff03-7f64-42b5-b7b2-ab885cd3ab7f
Как исправить ошибку?