Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Langages serveur > ASP
ASP Forum sur la programmation ASP. Avant de poster : Cours ASP, FAQ ASP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/07/2008, 12h01   #1
Membre habitué
 
Inscription : juillet 2006
Messages : 208
Détails du profil
Informations personnelles :
Âge : 27
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : juillet 2006
Messages : 208
Points : 135
Points : 135
Par défaut ASP - Insertion fichier dans une BD Oracle

Bonjour,
mon but est d'uploader un fichier (.jpg par exemple) dans une base oracle.
Je travaille en ASP JS, mais mon code ne marche pas, il me sort une erreur [object error]:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
var adOpenStatic=3;
var adLockOptimistic=3;
var cnxstr = proxy.XmlDataSource().selectSingleNode("CONNECTSTRING").text;
var stream = Server.CreateObject("ADODB.stream");
var pathFile = "c:\\image.jpg";
stream.Open();
stream.Type = 1
stream.LoadFromFile(pathFile);
 
var conn = Server.CreateObject("ADODB.CONNECTION");
conn.Open(cnxstr);
 
var rs = Server.CreateObject("ADODB.RECORDSET");
conn.BeginTrans();
conn.Execute("INSERT INTO SMGSZCONFINFO (UIDSZCONFINFO, UIDNETWORKCONF, VALIDATIONDATE, PROFIL, CONFCOMMENT, CONFFILE )  VALUES (   ( SELECT CASE WHEN MAX(UIDSZCONFINFO)IS NULL THEN 1 ELSE MAX(UIDSZCONFINFO)+1 END FROM SMGSZCONFINFO ) , (SELECT UIDNETWORKCONF FROM SMGNETWORKCONF),  '03/07/2008', 'TOTO', 'MON COMMENT',  empty_blob())");
rs.Open ("SELECT CONFFILE FROM SMGSZCONFINFO WHERE UIDSZCONFINFO = ( SELECT MAX( UIDSZCONFINFO) FROM SMGSZCONFINFO )", conn, adOpenStatic, adLockOptimistic);
 
rs.Fields("CONFFILE").AppendChunk(stream.Read()); 
rs.Update();
rs.Close();  
conn.CommitTrans();
quelqu'un a peut-etre une idee ?
__________________
Tox
toxycyty est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/07/2008, 13h41   #2
Membre habitué
 
Inscription : juillet 2006
Messages : 208
Détails du profil
Informations personnelles :
Âge : 27
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : juillet 2006
Messages : 208
Points : 135
Points : 135
Ca plante sur le rs.Update();

il me dit : ODBC Driver not capable
__________________
Tox
toxycyty est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/07/2008, 15h05   #3
Expert Confirmé
 
Avatar de pc75
 
Inscription : septembre 2004
Messages : 2 817
Détails du profil
Informations personnelles :
Âge : 56
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : septembre 2004
Messages : 2 817
Points : 3 011
Points : 3 011
Bonjour,

La gestion d'images dans une base de données, c'est galère.

Perso, je stocke le nom complet (Chemin + nom de l'image) et je n'ai aucun problème.
__________________
Par principe, je ne réponds pas aux messages URGENT.
Il n'y a pas de choses urgentes, il n'y a que des choses en retard. (un inconnu)
pc75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/07/2008, 16h35   #4
Membre habitué
 
Inscription : juillet 2006
Messages : 208
Détails du profil
Informations personnelles :
Âge : 27
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : juillet 2006
Messages : 208
Points : 135
Points : 135
J'ai resolu mon probleme.
J'ai remplace ces bouts de code :
Code :
1
2
 
( SELECT MAX( UIDSZCONFINFO) FROM SMGSZCONFINFO )
par un chiffre, et ca marche.
Apparemment je ne peut pas faire la requete du MAX dans mon autre requete, c'est vraiment bizarre quand meme.

Merci.
__________________
Tox
toxycyty est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/07/2008, 22h59   #5
Expert Confirmé Sénior

 
Avatar de Immobilis
 
Inscription : mars 2004
Messages : 5 862
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 5 862
Points : 5 982
Points : 5 982
Salut,

Quand on fait une insertion en base, pour récupérer l'id généré il suffit de faire un
Code :
"INSERT INTO ...; SELECT SCOPE_IDENTITY"
http://www.developpez.net/forums/d18007/bases-donnees/langage-sql/utiliser-immediatement-scope_identity/

A+
Immobilis est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h45.


 
 
 
 
Partenaires

Hébergement Web