Ich versuche, ein Login-Fenster mit MDI zu erstellen. Es ist mit einer SQL Server-Tabelle test
verbunden. Ich habe die Datentypen geändert und die Datenbank gelöscht und neu erstellt. Ich habe 2 Spalten: usr
und pwd
des Datentyps nvarchar
.Ungültiger Spaltenname während Spalte dort ist
Dim connetionString As String
Dim cnn As SqlConnection
connetionString = "Data Source=.;Initial Catalog=test;User ID=sa;Password=sasql"
cnn = New SqlConnection(connetionString)
Dim cmd As SqlCommand
Dim myreader As SqlDataReader
Dim query As String
query = "Select usr From users WHERE (usr =" + TextBox1.Text + " and pwd = " + TextBox2.Text + ")"
cmd = New SqlCommand(query, cnn)
cnn.Open()
myreader = cmd.ExecuteReader()
If myreader.Read() Then
Else
MessageBox.Show("Incorrect username/password !", "LOGIN ERROR", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
End If
cnn.Close()
Vielen Dank.
Um Ihr spezifisches Problem zu beheben, müssen Sie Anführungszeichen in Ihrer SQL-Zeichenkette um die Werte setzen, die aus der db kommen. Aber das ist die geringste Ihrer Sorgen. Nachschlagen Parametrierung und SQL-Injektion. Hör auf und mach das JETZT, bevor du weiter gehst. – sasfrog
Thx Sasfrog. Ich bin ein Anfänger und mache es zum Spaß. Ich werde tief hineingehen. – Jad
Der beste Ansatz für das Erstellen einer Zeichenfolge besteht darin, sie nach dem Erstellen zu überprüfen. Sie können ohne Anführungszeichen sehen, warum Sie diese Nachricht von der Datenbank erhalten haben. – sasfrog