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 03/01/2007, 11h54   #1
Membre habitué
 
Inscription : octobre 2005
Messages : 745
Détails du profil
Informations forums :
Inscription : octobre 2005
Messages : 745
Points : 127
Points : 127
Par défaut Erreur insert asp

Bonjour, voila j'essaye de faire un insert dans ma base de données, ouplutot, deux insert :
Code :
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
<%
logo_h = request.form("hauteur")
logo_w = request.form("largeur")								
if logo_h <> "" and logo_w <> "" then
Nom = "images/logo.gif"
strQuery = "select count(*) as NbLogo from Logo"
objRS.open strQuery
while not objRS.EOF
IDLogo = objRS("NbLogo") + 1
objRS.movenext
wend
objRS.CLOSE 
strQuery = "INSERT INTO Logo Values("&IDLogo&" , '"&Nom&"' , "&logo_w&", "&logo_h&")" 
objConn.Execute(strQuery)
strQuery = "SELECT count(*) as NbEns FROM Ens"
objRS2.open strQuery 
while not objRS2.EOF
IDEns = objRS2("NbEns") + 1
objRS2.movenext
wend
objRS2.Close
strQuery = "INSERT INTO Ens Values("&IDens&" , '"&session("NomDossier")&"', "&IDLogo&")"
response.write strQuery
objConn.Execute(strQuery)
end if
response.redirect "feuilledestyle.asp" %>

Le truc c'est que ma premiere requete marche parfaitement, alors que la seconde me fait un message d'erreur que je ne comprend pas :


Code :
[Microsoft][ODBC SQL Server Driver][SQL Server]Une valeur explicite e la colonne identité de la table 'Ens' ne peut être spécifiée que si on fait appel à la liste des colonne et si IDENTITY_INSERT est ON.
alors que j'ai bien les droits sur ma base et ma requete est correcte lorsque je l'affiche avec mon response.write...

Siquelqu'un avait une solution....
Merci!!
Alex35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2007, 12h00   #2
Modérateur
 
Avatar de kaiser59
 
Inscription : novembre 2005
Messages : 1 246
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : novembre 2005
Messages : 1 246
Points : 1 203
Points : 1 203
Envoyer un message via MSN à kaiser59
Slt,

Personellement à chaque fois que je met une nouvelle requete dans la meme page je refais appel au recordset et je n'ai pas de problème d'affichage ou quoi que se soit donc pourquoi pas toi

A+
kaiser59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2007, 13h33   #3
Membre habitué
 
Inscription : octobre 2005
Messages : 745
Détails du profil
Informations forums :
Inscription : octobre 2005
Messages : 745
Points : 127
Points : 127
parce que j'ai lu que pour les reques d'insert et d'update la syntaxe est :
objConn.Execute(strQuery)
donc pas de recordset...
Alex35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2007, 14h05   #4
Membre chevronné
 
Avatar de ryan
 
Inscription : juin 2003
Messages : 766
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 766
Points : 760
Points : 760
Yop!

Au sujet de ton message d'erreur: il semblerait bien que tu essaies de donner une valeur à une colonne Identity sans nommer explicitement cette colonne dans ta requête.
Code :
1
2
 
INSERT INTO matable (col1,col2,col3) VALUES ('val1','val2','val3')
D'habitude, on laisse le SGBD gérer la colonne IDENTITY sans essayer d'y inscrire des données soi-même.

Pour un INSERT ou un UPDATE, il n'est pas absolument nécessaire d'avoir un Recordset.
ryan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2007, 14h24   #5
Membre habitué
 
Inscription : octobre 2005
Messages : 745
Détails du profil
Informations forums :
Inscription : octobre 2005
Messages : 745
Points : 127
Points : 127
merci le probleme venait effectivement de ma base etant donné que pour la premiere requete l'id de la table n'etait pas incrémenté alors que pour l'autre si, par conséquent c'est résolu, merci de vos conseil!
Alex35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h15.


 
 
 
 
Partenaires

Hébergement Web