Хорошо, я делаю POS-систему для стационарного магазина, клиенту нужно ввести данные о продаже фотокопий в свою систему, поэтому я ввел размер формата бумаги, цвет и цену соответственно в базу данных MySQL. Например
A4 односторонняя Ч/Б $1 Двусторонняя А4 ч/б 2$ A4 односторонняя цветная 3$ Двойной цвет А4 4$
теперь проблема в том, что когда я заполняю поле со списком столбцом, данные будут дублироваться
Например А4 А4 А4 А4
это потому, что я ввел 4 раза A4 в базу данных, что мне нужно сделать, так это когда я нажимаю на поле со списком, я должен показывать только 1 A4
Я подключил поле со списком к базе данных
try {
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/photocopy","root","");
String sql = "SELECT * FROM `prices`";
PreparedStatement pstmt = conn.prepareStatement(sql);
ResultSet rs =pstmt.executeQuery();
while(rs.next()){
String pathayo = rs.getString("color");
jComboBox3.addItem(pathayo);
}
} catch (Exception e) {
}
Мне нужно показать только А4 один раз, а не 4 раза
Вот первопричина. У вас есть 4 столбца, однако вы извлекаете только 1 столбец 4 раза. Используйте ниже в качестве примера.
while (rs.next()) {
String coffeeName = rs.getString("COF_NAME");
int supplierID = rs.getInt("SUP_ID");
float price = rs.getFloat("PRICE");
}
В вашем случае исправить очень просто:
String pathayo = null;
while(rs.next()){
pathayo = rs.getString("color");
}
if (pathayo != null) jComboBox3.addItem(pathayo);
Сэр, если вы можете проверить фотографию базы данных, которая прикреплена
Я пробовал, но не могу понять, когда перемещаю jComboBox3.addItem(pathayo); из цикла строка pathayo не распознается, строка pathayo является результатом поиска в базе данных
Как это исправить, мне нужна только одна строка
предложите свой ответ, попробуйте.
Вы имеете в виду, если я возьму jComboBox3.addItem(pathayo); он не добавит все элементы, а только один раз точно?