CLOBs: Enregistrer un fichier texte dans une base de données

Author:

base de données, fichier, sql, set, sql, requête, commit, Connexion, oracle, jdbc, java, connexion, table
Download

 
import java.io.File;
import java.io.FileReader;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
 
public class BD_CLOBs2
 {
 /**
  * Ce programme se connecte à une Base de données Oracle
  * et enregsitre un fichier dans une table de cette base
  * de données
  **/
 
  public static void main(String[] args) throws Exception
  	{
 
    // Créer une connexion JDBC Oracle sur la Base de Données 'Cours'
    Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:Cours"
    	  , "nom_utilisateu", "Mot de passe");
 
    conn.setAutoCommit(false);
 
    String req = "INSERT INTO documents (nom, prix, fichier) VALUES (?, ?, ?)";
    PreparedStatement pStmt = conn.prepareStatement(req);
    pStmt.setString(1, "Fiche de Agents");
    pStmt.setString(2, "1500€");
 
    // Lire le fichier et l'ajouter à l'instruction SQl
    File fichier = new File("C:test.txt");
    FileReader reader = new FileReader(fichier);
    pStmt.setCharacterStream(3, reader, (int) fichier.length());
 
    // Exécuter les requêtes préparées
    pStmt.execute();
 
    conn.commit();
    reader.close();
    conn.close();
 
  }
}