Maison >base de données >tutoriel mysql >À quoi sert la méthode setAutoCommit() dans JDBC ?
Si vous vous engagez dans la base de données, toutes les modifications apportées jusqu'à ce point spécifique seront enregistrées.
Vous pouvez utiliser la méthode commit() pour vous engager dans la base de données. Chaque fois qu'un problème survient, vous pouvez utiliser la méthode rollback() pour restaurer la base de données à ce point. Certaines bases de données valident automatiquement la base de données par défaut. Cependant, lors de la gestion des transactions, vous devez valider manuellement la base de données.
Dans ce cas, vous pouvez utiliser la méthode setAutoCommit(). Cette méthode appartient à l'interface Connection et accepte une valeur booléenne.
Si vous transmettez true à cette méthode, cela activera la fonction de validation automatique de la base de données, si vous transmettez false à cette méthode, cela activera la fonction de validation automatique de la base de données. Désactivez la fonction de soumission automatique de la base de données.
Vous pouvez désactiver la fonction de validation automatique de votre base de données en utilisant cette méthode :
Con.setAutoCommit(false);
Le programme suivant utilise le traitement par lots pour insérer des données dans cette table. Ici, nous définissons autocommit sur false, ajoutons les instructions requises au lot, exécutons le lot et validons nous-mêmes dans la base de données.
import java.sql.Connection; import java.sql.DriverManager; import java.sql.Statement; public class BatchProcessing_Statement { public static void main(String args[])throws Exception { //Getting the connection String mysqlUrl = "jdbc:mysql://localhost/sampleDB"; Connection con = DriverManager.getConnection(mysqlUrl, "root", "password"); System.out.println("Connection established......"); //CREATE TABLE Dispatches( Product_Name VARCHAR(255), Name_Of_Customer VARCHAR(255), Month_Of_Dispatch VARCHAR(255), Price INT, Location VARCHAR(255)); //Creating a Statement object Statement stmt = con.createStatement(); //Setting auto-commit false con.setAutoCommit(false); //Statements to insert records String insert1 = "INSERT INTO Dispatches( Product_Name , Name_Of_Customer , " + "Month_Of_Dispatch , Price, Location) VALUES " + "('KeyBoard', 'Amith', 'January', 1000, 'hyderabad')"; String insert2 = "INSERT INTO Dispatches( Product_Name , Name_Of_Customer , " + "Month_Of_Dispatch , Price, Location) VALUES " + "('Earphones', 'SUMITH', 'March', 500, 'Vishakhapatnam')"; String insert3 = "INSERT INTO Dispatches( Product_Name , Name_Of_Customer , " + "Month_Of_Dispatch , Price, Location) VALUES " + "('Mouse', 'Sudha', 'September', 200, 'Vijayawada')"; //Adding the statements to the batch stmt.addBatch(insert1); stmt.addBatch(insert2); stmt.addBatch(insert3); //Executing the batch stmt.executeBatch(); //Saving the changes con.commit(); System.out.println("Records inserted......"); } }
Connection established...... Records inserted......
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!