Я создал базу данных с помощью SQLITEStudio и сохранил ее в папке своего проекта.Имя базы данных - ThirftersDataBase.db с таблицей accHistory и столбцами «пользователь» и «пароль».Соединение работает, когда я использую запрос Select, но когда я пытаюсь вставить данные, оно не работает.Пожалуйста помоги.
Это мой класс базы данных.
package db.Util;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
public class databaseConnection {
static Connection con = getConnection();
static String user;
public static Connection getConnection(){
String url = "jdbc:sqlite::resource:ThirftersDataBase.db";
try {
con = DriverManager.getConnection(url);
System.out.println("connected");
return con;
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
public void logIN(String user, String pass) {
String sql = "Insert or replace into accHistory(user, password) VALUES (?, ?)";
PreparedStatement st;
try {
st = con.prepareStatement(sql);
st.setString(1, user);
st.setString(2, pass);
st.executeUpdate();
//Check if query is executed;
System.out.println("Saved");
} catch (SQLException e) {
e.printStackTrace();
}
}
}
И у меня есть контроллер FXML с кнопкой, которая будет сохранять данные при нажатии.
public class ThriftersController{
databaseConnection connect = new databaseConnection();
public void Save(ActionEvent e) {
//Save "Mark" to user column and save "1234456" to password column
connect.logIN("Mark", "1234456");
}
}
Событие кнопкиотлично обрабатывается, когда я нажимаю кнопку. Она напечатает «Сохранено», но не сохранит в моей базе данных.