Sobes.tech
Junior — Middle

Чӣ гуна интиқоли параметрҳо дар саволҳои SQL иҷро мешавад?

sobes.tech AI

Ҷавоб аз AI

Тарафтангези параметрҳо дар саволҳои SQL одатан бо истифода аз изразҳои тайёр (Prepared Statements) иҷро мешавад. Ин кӯмак мекунад, ки дар муқобили ҳамлаҳои SQL injection муҳофизат карда шавад ва дар иҷрои такрории саволҳои монанд суръатбахшӣ шавад.

Дар Java, ин тавассути синфи PreparedStatement иҷро мешавад. Ба ҷои ворид кардани арзишҳо мустақим ба сатрҳои савол, истифодаи ҷойгузинҳои ? мешавад, ки баъдан бо истифода аз методҳои setXXX ба арзишҳои мушаххас иваз мешаванд.

Масалан:

String sql = "SELECT * FROM users WHERE id = ? AND status = ?";
PreparedStatement pstmt = connection.prepareStatement(sql);
pstmt.setInt(1, 10); // параметри аввал
pstmt.setString(2, "active"); // параметри дуввум
ResultSet rs = pstmt.executeQuery();

Ин усул бехатарӣ ва қулайиро дар кор бо параметрҳо таъмин мекунад.