|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
Sujet : ExecuteNonQuery : la propriété CommandText n'a pas été initialisée [ Base de données / SQL Server ] (prasbanu)
Informations & options pour cette discussion
|
jeudi 12 octobre 2006 à 13:15:29 |
ExecuteNonQuery : la propriété CommandText n'a pas été initialisée

prasbanu
|
Bonjour ! J'ai une une erreur de ce type: ExecuteNonQuery : la propriété CommandText n'a pas été initialisée
Ligne 146 :
Ligne 147 : cmdInsert.ExecuteNonQuery()
Ligne 148 :
Ligne 149 : Next | Lorsque j'exécute le code suivant:
Sub BtnValide_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnValide.Click Dim conn As SqlConnection = New SqlConnection conn.ConnectionString = "Server=INSRVSN2\GESTION ;Initial Catalog=Dev_GI2;uid=dev_gi2;password=dev_gi2" Dim cmdInsert AsNew SqlCommand conn.Open() Dim sqlInsert AsString Dim iCount AsInteger Dim strItem AsString For iCount = 0 To (ListBox3.Items.Count - 1) If ListBox3.Items.Item(iCount).Selected Then sqlInsert = " INSERT INTO GI_LISTEAPPLI2 (GILI_ID,GILI_APPLICATION)" sqlInsert += " VALUES ('" + ListBox3.Items(iCount).Value + "')" EndIf cmdInsert.CommandText = sqlInsert cmdInsert.Connection = conn cmdInsert.ExecuteNonQuery() Next conn.Close() EndSub
Pourriez vous m'aider??? Merci d'avance
|
|
|
|
jeudi 12 octobre 2006 à 13:30:07 |
Re : ExecuteNonQuery : la propriété CommandText n'a pas été initialisée

romagny13
|
Ollaaaa loll faut pas faire comme ca 1 dans un premier temps tu n'as qu'a recuperer chaque element de ta lisbox (euu une listbox ??? admettons) et tu crees un parametre pour chaque element (mm ajouter un test pour voir si tu as au moins 1 element) du style : Dim p1 As SqlParameterp1 = New SqlParameter("@p1", SqlDbType.Char, 200)p1.Value ="valeur" 2 ensuite tu ajoutes tes parametres a la command cmdInsert.Parameters.Add(p1) 3 et tu tapes ta requete du style INSERT INTO table1 (colonne1,colonne2) values (@p1,@p2)
par contre comme cest une requete insert tu dois savoir le nb elements deja que tu auras a ajouter et je te deconseille l'utilisation d'une listbox,prend plutot des textbox en plus tu pourraus beaucoup plus facielement recuperer les valeurs et les tester (avec en plus un errorprovider par ex)
+
|
|
|
|
jeudi 12 octobre 2006 à 13:33:42 |
Re : ExecuteNonQuery : la propriété CommandText n'a pas été initialisée

romagny13
|
oOps non pas un errorprovider cest de l asp.net mais avec les controls de validation > RequiredFieldValidator,RangeValidator,...
|
|
|
|
jeudi 12 octobre 2006 à 22:57:45 |
Re : ExecuteNonQuery : la propriété CommandText n'a pas été initialisée

Nurgle
|
Salut, En complément de ce que dis romagny13, jette un coup d'oeil à ce tuto sur les SqlParameters : [ Lien ]Bonne soirée 
Nurgle(Antoine)
|
|
|
|
vendredi 13 octobre 2006 à 10:23:00 |
Re : ExecuteNonQuery : la propriété CommandText n'a pas été initialisée

Yopyop
|
re, essayes
Sub BtnValide_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnValide.Click Dim conn As SqlConnection = New SqlConnection conn.ConnectionString = "Server=INSRVSN2\GESTION ;Initial Catalog=Dev_GI2;uid=dev_gi2;password=dev_gi2" Dim cmdInsert AsNew SqlCommand
Dim sqlInsert AsString Dim iCount AsInteger Dim strItem AsString
conn.Open() cmdInsert.Connection = conn
For iCount = 0 To (ListBox3.Items.Count - 1)
If ListBox3.Items.Item(iCount).Selected Then sqlInsert = " INSERT INTO GI_LISTEAPPLI2 (GILI_ID,GILI_APPLICATION)" sqlInsert += " VALUES ('" + ListBox3.Items(iCount).Value + "')"
cmdInsert.CommandText = sqlInsert cmdInsert.ExecuteNonQuery()
EndIf
Next conn.Close()
par contre il manque une valeur dans ton insert: GILI_ID,GILI_APPLICATION et tu insères uniquement une valeur : VALUES ('" + ListBox3.Items(iCount).Value + "') si ton gili_id est l'identity, tu peux l'enlever.
et laisse tomber l'idée de romagny13 concernant la textbox... je ne pense pas que cela corresponde à ce que tu veux faire. yopyop
|
|
|
|
vendredi 13 octobre 2006 à 11:21:41 |
Re : ExecuteNonQuery : la propriété CommandText n'a pas été initialisée

prasbanu
|
Bonjour YopYop!! Merci pour ta réponse,ça fonctionne sans erreur quand j'enlève GILI_ID et quand je mets GILI_ID en identity, mais mon problème n'est pas résolu.. Si tu veux sur ma Table listeapplication, j'ai 2 propriétés, c'est à dire les clés étrangères de 2 autres tables (Incident et application)! Et sur mon interface,j'ai 2 listebox, dans l'un j'ai toutes les applications de la table application et dans l'autre on devrait choisir à l'aide d'une flèche,les applications pour un seul incident (un incident peur avoir plusieurs application)...Je ne sais pas si je m'exprime bien, en tout cas c'est ça mon problème... Je sais que dans mon code il manque un logique mais je n'arrive pas trouver l'erreur...
Merci!
|
|
|
|
vendredi 13 octobre 2006 à 12:48:09 |
Re : ExecuteNonQuery : la propriété CommandText n'a pas été initialisée

Yopyop
|
oki,
donc 3 tables, listeapplication, incident et application. listeapplication (GILI_APPLICATION, qui contient uniquement des FK sur incident et application) est une associative entre incident et application.
ca, ca m'a l'air ok, mais je ne comprends pas trop les listbox...
Tu selectionnes une application (dans une des listbox), mais l'autre ? Qu'est ce que tu essaies de faire exactement ?
Explique un peu mieux stp (genre : je selectionne une application (1 seule), ensuite, je selectionne les incidents possibles (+sieurs possibles), ensuite je clicke sur Save et j'enregistre les incidents associés à cette application)
yopyop
|
|
|
|
vendredi 13 octobre 2006 à 13:40:56 |
Re : ExecuteNonQuery : la propriété CommandText n'a pas été initialisée

prasbanu
|
bah au fait, dans un listbox j'affiche toutes les applications possible et dans l'autre listbox je bascule avec une flèche les application que je ve pour un incident donné...et je clique sur save, il faut que j'ai dans la base,par ex incident 1 > application 1, 2 ,3 et dans liste application j'ai 3 ligne 1 >1 1>2 1>3 Mon pb je ne sais pas comment je pourrais faire pour icident dans la requete...J'espère que tu as compris mon soucis.. Au fait c'est un incident qui peur avoir plusieurs applications..C'est pour ça j'ai mis les applications dans un listbox pour pouvoir les choisir.... Merci pour ton aide!
|
|
|
|
vendredi 13 octobre 2006 à 14:18:29 |
Re : ExecuteNonQuery : la propriété CommandText n'a pas été initialisée

Yopyop
|
re,
dans ton insert, il te faut les ids des applications selectionnées et l'id de l'incident sélectionné.
ta table listeapplication doit avoir 2 coloones qui sont 2 clés étrangères. 1 avec l'id de l'application et 1 avec l'id de l'incident
ensuite dans ton insert (utilise le code que j'ai posté et modifie juste le SQL.. et utilise les bons noms des tables/colonnes, je les ai changé en qqch de plus explicite)
sqlInsert = " INSERT INTO APPL_INCIDENTS (INCIDENT_ID,APPLICATION_ID)" sqlInsert += " VALUES ('" + incidentID + "','" + ListBox3.Items(iCount).Value + "')"
si ton incident estdans une listbox, ca devrait donner qqch comme: sqlInsert = " INSERT INTO APPL_INCIDENTS (INCIDENT_ID,APPLICATION_ID)" sqlInsert += " VALUES ('" + lstBoxIncident.SelectedValue + "','" + ListBox3.Items(iCount).Value + "')"
yopyop
ps: si tes ids sont de type numérique (c'est mieux, les requêtes sont plus rapides), tu peux enlever les ' lors de l'insert: sqlInsert = " INSERT INTO APPL_INCIDENTS (INCIDENT_ID,APPLICATION_ID) " sqlInsert += " VALUES (" + lstBoxIncident.SelectedValue + "," + ListBox3.Items(iCount).Value + ")"
|
|
|
|
lundi 16 octobre 2006 à 10:42:07 |
Re : ExecuteNonQuery : la propriété CommandText n'a pas été initialisée

prasbanu
|
Bonjour YOPYOP! Merci pour ta réponse précedente!! J'avais modifié mon code,j'ai quand meme des petites erreurs! Premièrement j'ai une erreur sur GILI_ID car il n'est pas déclaré,j'ai essayé avec cette erreur..ça fonctionne mais le GILI_ID ne change pas,j'ai toujours le même identifiant dans la colonne GILI_ID.
Sub
BtnValide_Click(
ByVal
sender
As
System.Object,
ByVal
e
As
System.EventArgs)
Handles
BtnValide.Click
Dim
conn
As
SqlConnection =
New
SqlConnectionconn.ConnectionString = "Server=INSRVSN2\GESTION ;Initial Catalog=Dev_GI2;uid=dev_gi2;password=dev_gi2"
Dim
cmdInsert
As
New
SqlCommand
Dim
sqlInsert
As
String
Dim
iCount
As
Integer
Dim
strItem
As
String
conn.Open()
cmdInsert.Connection = conn
For
iCount = 0
To
(ListBox3.Items.Count - 1)
If
ListBox3.Items.Item(iCount).Selected
Then
sqlInsert = " INSERT INTO GI_LISTEAPPLI3 (GILI_ID,GILI_APPLICATION)"
sqlInsert += " VALUES (" + GILI_ID + "," + ListBox3.Items(iCount).Value + ")"
cmdInsert.CommandText = sqlInsert
cmdInsert.ExecuteNonQuery()
End
If
Next
conn.Close()
End
Sub
Voilà je n'arrive toujours pas régler mon pb!Dsl!!! Merci d'avance!
|
|
|
Cette discussion est classé dans : conn, sqlinsert, executenonquery, cmdinsert, commandtext
Répondre à ce message
Sujets en rapport avec ce message
Problème avec "ExecuteNonQuery" [ par Netlink ]
Bonjour,J'ai un problème pour insérer des données dans ma base Access... Voici mon code :Sub doInsert(Source As Object, E As EventArgs) Dim sSQL as st
Microsoft OLE DB Provider for ODBC Drivers error '80004005' [ par oriviera ]
IAORANA[font=Lucida Voilà 15 jours que je galère, j'ai essayé des tas de scripts proposés sur le net mais rien ne marche voilà mon code pourtant simpl
pb d'update [ par luck_y6 ]
Bonjour, pour faire court voici mon code :If IsObject(Session("Client_conn")) Then Set conn = Session("Client_conn")Else ' Path long de la base de
[ASP.NET]Connexion a Access !!! [ par ricopetitdejeuner ]
Bonsoir,Je suis en train de devenir fou! Ca fait 2 jours que je cherche seulement a me connecter a une bdd Access. J'ai essayer 5 methodes differentes
urgent:les transactions en asp [ par abari ]
slt tt le monde voila le code dans ma page asp:Set conn= Server.CreateObject("ADODB.Connection") conn.Open "driver={SQL Server}; .......conn.BeginTran
asp:probléme dans les transactions(Aucune transaction n'est active) [ par abari ]
voila mon code de transaction:Set conn= Server.CreateObject("ADODB.Connection") conn.Open "driver={SQL Server}; ...................conn.beginTransSQLC
asp:transaction(aucune transaction n'est active????) [ par abari ]
voila mon code de transaction:Set conn= Server.CreateObject("ADODB.Connection") conn.Open "driver={SQL Server}; ...................conn.beginTransSQLC
pour la néme fois svp svp j'ai un prb "transactions en asp" [ par abari ]
voila mon code de transaction:Set conn= Server.CreateObject("ADODB.Connection") conn.Open "driver={SQL Server}; ...................conn.beginTransSQLC
Base de données [ par malhivertman1 ]
Je suis sous Visual J++ et je dois réaliser une sorte de logiciel ki me demande de suavegarder certaine donnés dans une base de données pour que l'uti
PROBLEME de connexion a ma base [ par malhivertman1 ]
Voici mon code pour me conecter a ma base, (il ne march pas)' connexion Set conn = server.CreateObject ("ADODB.Connection") conn.Open "Provider=Micros
Livres en rapport
|
|