rakyouna
Messages postés54Date d'inscriptionlundi 11 juillet 2005StatutMembreDernière intervention10 août 2008
-
28 août 2006 à 16:30
rakyouna
Messages postés54Date d'inscriptionlundi 11 juillet 2005StatutMembreDernière intervention10 août 2008
-
30 août 2006 à 12:55
Slt à tous,
Je veux enregistrer un fichier, qui sera saisi à partir d'un formulaire, dans une base de données MySQL.
Voici un extrait de mon formulaire HTML:
......
<TD> Saisir un fichier : </TD>
<TD> </TD>
......
Ombitious_Developper
Messages postés2333Date d'inscriptionsamedi 28 février 2004StatutMembreDernière intervention26 juillet 201338 28 août 2006 à 21:32
Salut :
Pour insérer un fichier dans une base de données on peut utiliser les PreparedStatement.
Vu que je ne connais pas les champs de votre table, je vais supposé que votre table s'appelle myTable et qu'elle contient un seul champ celui contenant le fichier.
(La démarche restera toujours valable)
// path : correspond au chemin absolu où se trouve le fichier
File file = new File (path);
FileInputStream inputStream = new FileInputStream (file);
try {
PreparedStatement preStmt;
// Supposons que vous avez un objet de type Connection "connect"
preStmt = connect.prepareStatement ("INSERT INTO myTable VALUES (?)");
try {
// Vu que votre fichier est ASCII on utilise "setAsciiStream"
// Sinon on utilise "setBinaryStream"
// 1 ici correspond au rang du champ dans la requête
preStmt.setAsciiStream (1, inputStream, (int)file.length ());
preStmt.executeUpdate ();
}
finally {
preStmt.close ();
}
}
finally {
inputStream.close ();
}