Questions marquées «prepared-statement»

Une instruction préparée (ou instruction paramétrée) est une instruction SQL précompilée qui sert à améliorer les performances et à atténuer les attaques par injection SQL. Les instructions préparées sont utilisées dans de nombreux systèmes de gestion de bases de données relationnelles populaires.

21
Puis-je lier un tableau à une condition IN ()?
Je suis curieux de savoir s'il est possible de lier un tableau de valeurs à un espace réservé à l'aide de PDO. Le cas d'utilisation ici tente de transmettre un tableau de valeurs à utiliser avec une IN()condition. J'aimerais pouvoir faire quelque chose comme ça: <?php $ids=array(1,2,3,7,8,9); $db = new …

30
Alternatives à la clause PreparedStatement IN?
Quelles sont les meilleures solutions de contournement pour utiliser une INclause SQL avec des instances de java.sql.PreparedStatement, qui n'est pas prise en charge pour plusieurs valeurs en raison de problèmes de sécurité d'attaque par injection SQL: un ?espace réservé représente une valeur, plutôt qu'une liste de valeurs. Considérez l'instruction SQL …


9
Comment les instructions préparées peuvent-elles se protéger des attaques par injection SQL?
Comment les instructions préparées nous aident-elles à empêcher les attaques par injection SQL ? Wikipedia dit: Les instructions préparées résistent à l'injection SQL, car les valeurs de paramètre, qui sont transmises ultérieurement à l'aide d'un protocole différent, n'ont pas besoin d'être correctement échappées. Si le modèle d'instruction d'origine n'est pas …

13
Comment puis-je obtenir le SQL d'un PreparedStatement?
J'ai une méthode Java générale avec la signature de méthode suivante: private static ResultSet runSQLResultSet(String sql, Object... queryParams) Il ouvre une connexion, construit une PreparedStatementà l'aide de l'instruction sql et des paramètres du queryParamstableau de longueur variable, l'exécute, met en cache le ResultSet(dans a CachedRowSetImpl), ferme la connexion et renvoie …

22
PDO Prepared Insère plusieurs lignes dans une seule requête
J'utilise actuellement ce type de SQL sur MySQL pour insérer plusieurs lignes de valeurs dans une seule requête: INSERT INTO `tbl` (`key1`,`key2`) VALUES ('r1v1','r1v2'),('r2v1','r2v2'),... Sur les lectures sur PDO, l'utilisation des instructions préparées devrait me donner une meilleure sécurité que les requêtes statiques. Je voudrais donc savoir s'il est possible …


1
mysqli_fetch_assoc () attend des erreurs de paramètre / appel à une fonction membre bind_param (). Comment obtenir l'erreur mysql réelle et la corriger?
Dans mon environnement local / de développement, la requête MySQLi fonctionne correctement. Cependant, lorsque je le télécharge sur mon environnement d'hébergement Web, j'obtiens cette erreur: Erreur fatale: appel à une fonction membre bind_param () sur un non-objet dans ... Voici le code: global $mysqli; $stmt = $mysqli->prepare("SELECT id, description FROM …


2
Réutiliser plusieurs fois un PreparedStatement
dans le cas de l'utilisation de PreparedStatement avec une seule connexion commune sans pool, puis-je recréer une instance pour chaque opération dml / sql en conservant la puissance des instructions préparées? Je veux dire: for (int i=0; i<1000; i++) { PreparedStatement preparedStatement = connection.prepareStatement(sql); preparedStatement.setObject(1, someValue); preparedStatement.executeQuery(); preparedStatement.close(); } au …


5
PreparedStatement setNull (..)
Java PreparedStatement offre la possibilité de définir explicitement une valeur Null. Cette possibilité est: prepStmt.setNull(parameterIndex, Types.VARCHAR); La sémantique de cet appel est-elle la même que lors de l'utilisation d'un setType spécifique avec un paramètre nul? prepStmt.setString(null); ?

3
Optimisation JDBC Oracle: activez la mise en cache PreparedStatement dans une application Spring Boot
J'ai une application Spring Boot REST connectée à une base de données Oracle. Nous utilisons JDBC en utilisant JdbcTemplate. Les propriétés de la base de données Oracle sont obtenues via ces 3 paramètres application.properties : spring.datasource.url spring.datasource.username spring.datasource.password Cette application utilise le HikariCP. Sur le site Web HikariCP, j'ai appris …
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.