Einfügen von Daten in SQL Server-Datenbank mithilfe von VB.Net
Ich bin derzeit mit HDI-Mitgliedschaftsanbieter und das design sieht wie unten dargestellt:
Nun möchte ich einen neuen Benutzer erstellen, und legen Sie die Werte in die Datenbank, wie unten gezeigt:
Try
Dim connectionString As String = "Data Source=.\sqlexpress;Initial Catalog=HDIMembershipProvider;Integrated Security=True"
Using cn As New SqlConnection(connectionString)
cn.Open()
Dim cmd As New SqlCommand()
cmd.CommandText = "INSERT INTO Users VALUES(@Username,@Password,@Email,@PasswordQuestion,@PasswordAnswer)"
Dim param1 As New SqlParameter()
param1.ParameterName = "@Username"
param1.Value = txtUsername.Text.Trim()
cmd.Parameters.Add(param1)
Dim param2 As New SqlParameter()
param2.ParameterName = "@Password"
param2.Value = txtPassword.Text.Trim()
cmd.Parameters.Add(param2)
Dim param3 As New SqlParameter()
param3.ParameterName = "@Email"
param3.Value = txtEmail.Text.Trim()
cmd.Parameters.Add(param3)
Dim param4 As New SqlParameter()
param4.ParameterName = "@PasswordQuestion"
param4.Value = txtSecurityQuestion.Text.Trim()
cmd.Parameters.Add(param4)
Dim param5 As New SqlParameter()
param5.ParameterName = "@PasswordAnswer"
param5.Value = txtSecurityAnswer.Text.Trim()
cmd.Parameters.Add(param5)
cmd.Connection = cn
cmd.ExecuteNonQuery()
cn.Close()
End Using
Successlbl.show
Successlbl.show.Text = "Regisration Success."
Catch
Errolbl.Show()
Errolbl.Text = "Your account was not created.Please try again."
End Try
Nun das problem ist, dass die Daten nicht einfügen in die Datenbank. Ich würde gerne wissen, Ob jemand kann mir, wohin ich gehe falsch gemacht?
- Sie schlucken keine Ausnahmen - Sie brauchen, um sich die Ausnahme oder zumindest herausfinden, was es ist, bevor jede Hilfe gegeben werden kann. Nicht
Catch
ohne wenigstens herauszufinden, die Ausnahme. - immer diese exception:Spaltenname oder Anzahl der gelieferten Werte nicht mit der Tabelle definition.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ihre insert-Anweisung ist falsch - da Sie nicht Angabe von Feldnamen sollten Sie die Bereitstellung von Werten für alle Spalten.
Dem Update zu versorgen, die die Namen der Spalten, die Sie einfügen in.
Den screenshot auch zeigt, dass es erforderlich ist
ApplicationName
Spalte, so es sei denn, es hat eineDEFAULT
definiert sind, müssen Sie zu liefern, wie gut.Vorausgesetzt, Sie haben eine
DEFAULT
definiertApplicationName
: