6666
import java.sql.*;
import java.util.Scanner;
public class ComplaintSearch {
private static final Scanner scanner = new Scanner(System.in);
// Database connection method
private static Connection connect() throws Exception {
Class.forName("org.sqlite.JDBC");
return DriverManager.getConnection("jdbc:sqlite:D:\\Users\\2779701\\Desktop\\sqlite\\mydatabase.db");
}
public static void main(String[] args) {
try {
System.out.print("Enter Consumer ID to view complaints: ");
int searchID = scanner.nextInt();
// Search for complaints based on Consumer ID
searchComplaintsByConsumerID(searchID);
} catch (Exception e) {
System.out.println("An error occurred: " + e.getMessage());
}
}
// Method to search for complaints by Consumer ID
private static void searchComplaintsByConsumerID(int consumerID) throws Exception {
String sql = """
SELECT consumer_number, customer_name, complaint_type, category, problem, mobile_number, 'status'
FROM complaints WHERE consumer_number = ?
""";
Connection conn = connect();
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, consumerID);
ResultSet rs = pstmt.executeQuery();
System.out.println("\nConsumer ID | Customer Name | Complaint Type | Category | Problem Description | Mobile Number | Status");
System.out.println("---------------------------------------------------------------------------------------------------------------");
boolean foundComplaint = false;
while (rs.next()) {
Complaint complaint = new Complaint(
rs.getInt("consumer_number"),
rs.getString("customer_name"),
rs.getString("complaint_type"),
rs.getString("category"),
rs.getString("problem"),
rs.getString("mobile_number"),
rs.getString("status")
);
complaint.display();
foundComplaint = true;
}
if (!foundComplaint) {
System.out.println("No complaints found for Consumer ID: " + consumerID);
}
rs.close();
pstmt.close();
conn.close();
}
}