ExecuteNonQuery : la propriété Connection n'a pas été initialisé
oussamacab
Messages postés
1
Statut
Membre
-
Kalissi Messages postés 221 Statut Membre -
Kalissi Messages postés 221 Statut Membre -
j'ai un petit ex a faire sous ASP.NET
j'ai crée 2 champs de saisie
id: textbox1
id:textbox2
un bouton pour faire l'ajout à la base
et un label pour le message de résultat
je fais la saisie de deux champs et en cliquant sur le bouton un message d'erreur dans le label : ExecuteNonQuery : la propriété Connection n'a pas été initialisé
j'attends vos aides et merci d'avance
j'ai crée 2 champs de saisie
id: textbox1
id:textbox2
un bouton pour faire l'ajout à la base
et un label pour le message de résultat
je fais la saisie de deux champs et en cliquant sur le bouton un message d'erreur dans le label : ExecuteNonQuery : la propriété Connection n'a pas été initialisé
j'attends vos aides et merci d'avance
Imports System.Data.OleDb
Imports System.Data
Imports System.Data.Common.DbCommand
Imports System.Data.SqlClient
Partial Class _Default
Inherits System.Web.UI.Page
Dim Connection As New System.Data.OleDb.OleDbConnection
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Try
Connection.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\bm\Documents\Visual Studio 2008\WebSites\tryy\dbase\try.mdb"
Dim req As SqlCommand = New SqlCommand("insert into req (name,age) values('" & TextBox1.Text & "', '" & TextBox2.Text & "')")
Connection.Open()
req.ExecuteNonQuery()
Connection.Close()
Label1.Text = "data saved"
TextBox1.Text = ""
TextBox2.Text = ""
Catch ex As Exception
Connection.Close()
Label1.Text = ex.Message
End Try
End Sub
End Class
2 réponses
Je crois que tu dois déclarer ta requête comme ceci :
dim req as new oledbCommand("insert into req (name,age) values('" & TextBox1.Text & "', '" & TextBox2.Text & "')",connection)
Aussi je pense que le nom de ta bdd "try.mdb" n'est bien choisi
--
dim req as new oledbCommand("insert into req (name,age) values('" & TextBox1.Text & "', '" & TextBox2.Text & "')",connection)
Aussi je pense que le nom de ta bdd "try.mdb" n'est bien choisi
--
Bonjour,
Est-tu sur du chemin de ta BD ?
K
Est-tu sur du chemin de ta BD ?
Imports System.Data.SqlClient Partial Class ConnexionBD Inherits System.Web.UI.Page Dim Connection As New System.Data.OleDb.OleDbConnection Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click Dim Var1 As String = String.Empty Dim Var2 As String = String.Empty Dim Var3 As String = String.Empty Dim CheminBD As String = "C:\Users\bm\Documents\Visual Studio 2008\WebSites\tryy\dbase\try.mdb" '...............tryy Try Connection.ConnectionString = _ "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & CheminBD Dim req As SqlCommand = New SqlCommand("insert into req (name,age) values('" & Var2 & "', '" & Var3 & "')") Connection.Open() req.ExecuteNonQuery() Var1 = "data saved" Var2 = String.Empty Var3 = String.Empty Catch ex As Exception Var1 = ex.Message Finally Connection.Close() End Try End Sub End Class
K
Tel que tu as écris ton code, rien ne relie ta variable req à ta variable Connection.
Tu dois pouvoir garder ton code et rajouter juste un truc du genre req.Connection = Connection...
Oui, j'oublie souvent que les codeurs accèdent directement à la BD à partir d'un formulaire.
Pour ma part, dans mon travail, je n'ai pas le droit d'accéder à une BD à partir d'un formulaire,
je dois passer par une classe UAD (Unité d'Accès aux Données ) du genre :
K