[JAVA] [Entraine toi! ] Exécution de l'instruction SQL

1. Connaissances préalables

-[Entraine toi! ] Liaison de base de données Java (Connector / J 8.0.20)

En tant que connaissance préalable, le contenu du lien ci-dessus est requis.

2. Écriture de base

Mettre à jour SQL


nom de classe de classe publique{
	public static void main(String[] args) {
		try {
			/*lien*/
			Connection con = DriverManager.getConnection(URL de la base de données,Nom d'utilisateur de la base de données,Mot de passe de la base de données);
			/*déclaration*/
			PreparedStatement pstmt = con.prepareStatement(Instruction SQL);

			//Attribution d'une valeur à une instruction SQL
			pstmt.setString(Quel nombre?Ou,valeur);

			/*Exécution de l'instruction SQL*/
			pstmt.executeUpdate(); 

		} catch (SQLException e) {
			//Traitement lorsqu'une erreur SQL se produit
		}
	}
}

Référence SQL


nom de classe de classe publique{
	public static void main(String[] args) {
		try {
			/*lien*/
			Connection con = DriverManager.getConnection(URL de la base de données,Nom d'utilisateur de la base de données,Mot de passe de la base de données);
			/*déclaration*/
			PreparedStatement pstmt = con.prepareStatement(Instruction SQL);

			//Attribution d'une valeur à une instruction SQL
			pstmt.setString(Quel nombre?Ou,valeur);

			//Exécution de l'instruction SQL
			ResultSet res = pstmt.executeQuery();

			//Fonctionnement de ResultSet
			while (res.next()) {
				//Affichage des résultats d'exécution
			}

		} catch (SQLException e) {
			//Traitement lorsqu'une erreur SQL se produit
		}
	}
}

3. Préparation préalable

01.png

  1. Après avoir lancé Eclipse, sélectionnez «[Nouveau] → [Projet Java]». 02.png
  2. Entrez «TestDB» comme nom du projet, sélectionnez «JavaSE-1.8» pour utiliser l'environnement d'exécution JRE, puis cliquez sur le bouton «Terminer». 03.png
  3. Sélectionnez «[Nouveau (N)] → [Classe]». 04.png
  4. Entrez «db» dans le paquet et «Test1» dans le nom, cochez «public static void main (String [] args)» et cliquez sur le bouton «Terminer». 05.png
  5. Cliquez avec le bouton droit sur le projet et sélectionnez «[Build Path (B)] → [Add External Archive (V)]». 06.png
  6. Sélectionnez mysql-connector-java-8.0.20.jar dans C: \ Program Files \ MySQL \ mysql-connector-java-8.0.20.

4. Exemple de description

--Référence (instruction SELECT)

Test1.java


package db;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class Test1 {
	public static void main(String[] args) {
		/*URL de la base de données*/
		String url = "jdbc:mysql://localhost/test?characterEncoding=UTF-8&serverTimezone=JST&useSSL=false";

		/*Utilisateur et mot de passe de la base de données*/
		String user = "test";
		String password = "test";

		/*Instruction SQL*/
		String sql = "SELECT * FROM test1";

		try {
			/*lien*/
			Connection con = DriverManager.getConnection(url, user, password);
			/*déclaration*/
			PreparedStatement pstmt = con.prepareStatement(sql);

			//Exécution de l'instruction SQL
			ResultSet res = pstmt.executeQuery();

			//Fonctionnement de ResultSet
			while (res.next()) {
				//Affichage des résultats d'exécution
				System.out.print("ID:" + res.getInt("id") + " ");
				System.out.print("Nom:" + res.getString("name") + "\n");
			}
		} catch (SQLException e) {
			//Traitement lorsqu'une erreur SQL se produit
			e.printStackTrace();
		}
	}
}

--Enregistrement (instruction INSERT)

Test1.java


package db;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class Test1 {
	public static void main(String[] args) {
		/*URL de la base de données*/
		String url = "jdbc:mysql://localhost/test?characterEncoding=UTF-8&serverTimezone=JST&useSSL=false";

		/*Utilisateur et mot de passe de la base de données*/
		String user = "test";
		String password = "test";

		/*Instruction SQL*/
		String sql = "INSERT INTO test1 (name) VALUE (?)";

		try {
			/*lien*/
			Connection con = DriverManager.getConnection(url, user, password);
			/*déclaration*/
			PreparedStatement pstmt = con.prepareStatement(sql);

			//Définir la valeur dans l'espace réservé
			pstmt.setString(1,"test5");

			//Exécution (mise à jour) de l'instruction SQL
			pstmt.executeUpdate();

			//Mise à jour de l'instruction SQL
			sql = "SELECT * FROM test1";

			/*déclaration*/
			pstmt = con.prepareStatement(sql);

			//Exécution d'une instruction SQL (voir)
			ResultSet res = pstmt.executeQuery();

			//Fonctionnement de ResultSet
			while (res.next()) {
				//Affichage des résultats d'exécution
				System.out.print("ID:" + res.getInt("id") + " ");
				System.out.print("Nom:" + res.getString("name") + "\n");
			}
		} catch (SQLException e) {
			//Traitement lorsqu'une erreur SQL se produit
			e.printStackTrace();
		}
	}
}

--Change (instruction UPDATE)

Test1.java


package db;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class Test1 {
	public static void main(String[] args) {
		/*URL de la base de données*/
		String url = "jdbc:mysql://localhost/test?characterEncoding=UTF-8&serverTimezone=JST&useSSL=false";

		/*Utilisateur et mot de passe de la base de données*/
		String user = "test";
		String password = "test";

		/*Instruction SQL*/
		String sql = "UPDATE test1 SET name = ? WHERE id = ?";

		try {
			/*lien*/
			Connection con = DriverManager.getConnection(url, user, password);
			/*déclaration*/
			PreparedStatement pstmt = con.prepareStatement(sql);

			//Définir la valeur dans l'espace réservé
			pstmt.setString(1,"testX");
			pstmt.setInt(2,2);

			//Exécution (mise à jour) de l'instruction SQL
			pstmt.executeUpdate();

			//Mise à jour de l'instruction SQL
			sql = "SELECT * FROM test1";

			/*déclaration*/
			pstmt = con.prepareStatement(sql);

			//Exécution d'une instruction SQL (voir)
			ResultSet res = pstmt.executeQuery();

			//Fonctionnement de ResultSet
			while (res.next()) {
				//Affichage des résultats d'exécution
				System.out.print("ID:" + res.getInt("id") + " ");
				System.out.print("Nom:" + res.getString("name") + "\n");
			}
		} catch (SQLException e) {
			//Traitement lorsqu'une erreur SQL se produit
			e.printStackTrace();
		}
	}
}

--Delete (instruction DELETE)

Test1.java


package db;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class Test1 {
	public static void main(String[] args) {
		/*URL de la base de données*/
		String url = "jdbc:mysql://localhost/test?characterEncoding=UTF-8&serverTimezone=JST&useSSL=false";

		/*Utilisateur et mot de passe de la base de données*/
		String user = "test";
		String password = "test";

		/*Instruction SQL*/
		String sql = "DELETE FROM test1 WHERE id = ?";

		try {
			/*lien*/
			Connection con = DriverManager.getConnection(url, user, password);
			/*déclaration*/
			PreparedStatement pstmt = con.prepareStatement(sql);

			//Définir la valeur dans l'espace réservé
			pstmt.setInt(1,3);

			//Exécution (suppression) de l'instruction SQL
			pstmt.executeUpdate();

			//Mise à jour de l'instruction SQL
			sql = "SELECT * FROM test1";

			/*déclaration*/
			pstmt = con.prepareStatement(sql);

			//Exécution d'une instruction SQL (voir)
			ResultSet res = pstmt.executeQuery();

			//Fonctionnement de ResultSet
			while (res.next()) {
				//Affichage des résultats d'exécution
				System.out.print("ID:" + res.getInt("id") + " ");
				System.out.print("Nom:" + res.getString("name") + "\n");
			}
		} catch (SQLException e) {
			//Traitement lorsqu'une erreur SQL se produit
			e.printStackTrace();
		}
	}
}

Copiez l'instruction ci-dessus, spécifiez «S-JIS» comme code de caractère, enregistrez le nom de fichier sous «Test1.java» et exécutez-le. ↓ ↓

--Référence (instruction SELECT) 01.png

--Enregistrement (instruction INSERT) 02.png

--Change (instruction UPDATE) 03.png

--Delete (instruction DELETE) 04.png

5. Connexes

Recommended Posts

[Entraine toi! ] Exécution de l'instruction SQL
Principes de base de l'instruction try-with-resources
[Java] Utilisation de Mirage-Basic de SQL
[Java] Pratique de la gestion des exceptions [Exception]
Note de résultat d'exécution de String.substring
Signification de la rédaction d'une déclaration d'importation