1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
|
//Importation des packages importants
import java.sql.*;//Pour la connexion avec Oracle
import java.io.*; //Pourlesentr�e sorties
import oracle.jdbc.*;//PourlespilotesOracle
import oracle.sql.*;//Pourlessp�cificit�sSQLd'Oracle
import oracle.ord.im.OrdImage;//PourlaclasseOrdImage
import oracle.ord.im.OrdImageSignature;//PourlaclasseOrdImageSignature
public class Ajout_OrdImage{
public static void main (String [] args){
try {
//Etape1:Cr�ationdelaconnexionaveclabase
//EnregistrementdupiloteOracle
DriverManager.registerDriver(new oracle.jdbc.OracleDriver());
//OuverturedelaconnexionaveclaBD
Connection conn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:BDVID", //urldelabase
"system", //utilisateur
"marrakech"); //motdepasse
//Etape2:Mise�falsedel'autocommit
conn.setAutoCommit(false);
//Etape3:Initialisationdel'attributORDImage
//Ecrituredelarequ�teSQL
String sql= "UPDATE MaTable SET image =ORDSYS.ORDImage.init() WHERE id=1";
//Cr�ationd'uneinstanced'unObjetStatement
Statement stmt=conn.createStatement();
//Executiondelarequ�te
stmt.execute(sql);
//Etape4:R�cup�rationdudescripteur
//Ecrituredelarequ�teSQL
String sql2= "SELECT image FROM MaTable WHERE id=1 FOR UPDATE";
//Executiondelarequ�teetr�cup�rationdur�sultat
OracleResultSet rset=(OracleResultSet)stmt.executeQuery(sql2);
//S'ilyaunr�sultat
if( rset.next()) {
//R�cup�rationdudescripteurd'OrdImage
OrdImage imgObj=(OrdImage)rset.getCustomDatum(1,OrdImage.getFactory());
//Etape5:Envoidel'image
//Cr�ationd'unbloctry{}catchpourl'exceptiond'entr�e/sortie
try{
//Envoidel'imagedansl'attributlocalDatadutypeORDImage
imgObj.loadDataFromFile("jpg.png");
}
catch(IOException e){e.printStackTrace();}
//Etape6:G�n�rationdesm�tasdonn�es
//G�n�rationdesm�tasdonn�es(propri�t�sdel'image)
imgObj.setProperties();
//V�rificationdelag�n�rationdespropri�t�s
if(imgObj.checkProperties()){
//Ecrituredelarequ�teSQLpourmettre�jourl'attribut
String sql3= "UPDATE maTable SET image=? WHERE id=1";
//Cr�ationd'uneinstancedel'objetOraclePreparedStatement
OraclePreparedStatement pstmt=(OraclePreparedStatement)conn.prepareStatement(sql3);
//Ajoutdel'instanced'OrdImagedanslarequ�te
pstmt.setORAData(1,imgObj);
//Executiondelarequ�te
pstmt.execute();
//Fermeture
pstmt.close();
//Etape7:Validationmanueldelabase
conn.commit();
}
}
//Etape8:Fermeturedesconnexionsetremise�true
stmt.close();
//Remise�truedel'autocommit
conn.setAutoCommit(true);
//fermeturedelaconnexion
conn.close();
} catch(SQLException e){e.printStackTrace();
}
}
} //fin |