Junior
Фарқи байни усулҳои execute, executeQuery ва executeUpdate чист?
sobes.tech AI
Ҷавоб аз AI
executeQuery(): Қолданылады SQL операторларын орындау үшін, олар бір нәтижелер жиынтығын қайтарса (мысалы,SELECT).ResultSetобъектісін қайтарады.executeUpdate(): Қолданылады SQL операторларын орындау үшін, олар дерекқорды өзгертеді және жаңартылған жолдардың санын қайтарады (мысалы,INSERT,UPDATE,DELETE,CREATE TABLE,DROP TABLE).intқайтарады.execute(): Көп мақсатты әдіс. Кез келген SQL операторын орындауға болады.booleanқайтарады, олResultSetқайтарылғанын көрсетеді. Егерtrueболса, нәтижеResultSet. Егерfalseболса, нәтиже жаңартылған жолдардың саны. Шын мәнінде нәтижені алу үшінgetResultSet()немесеgetUpdateCount()пайдалану керек.
| Әдіс | Мақсаты | Қайтарылатын мән | Қолдану мысалы |
|---|---|---|---|
executeQuery |
SELECT орындау |
ResultSet |
Кестеден деректер алу. |
executeUpdate |
INSERT, UPDATE, DELETE, DDL орындау |
int (өзгертілген жолдар саны) |
Жазбаларды қосу, өзгерту немесе жою; кестелерді құру немесе жою. |
execute |
Кез келген SQL операторын орындау | boolean (ResultSet қайтарылса, true) |
Оператордың түрі алдын ала белгілі болмаса немесе оператор деректер мен санды қайтаруы мүмкін. |
execute() қолдану мысалы:
// Алдын ала, statement жасалған деп есептеледі
boolean isResultSet = statement.execute("SELECT * FROM users WHERE id = 1 OR INSERT INTO logs (message) VALUES ('User fetched')");
if (isResultSet) {
// ResultSet өңдеу
try (ResultSet rs = statement.getResultSet()) {
while (rs.next()) {
// Деректерді оқу
}
}
} else {
// Жаңартылған жолдар санын өңдеу
int updateCount = statement.getUpdateCount();
// updateCount өңдеу
}