Я пытаюсь создать базу данных входа в систему с помощью vb.net. Я использую этот код для подключения, но он не работает !:
Public Class Form1
Private Sub Label2_Click(sender As Object, e As EventArgs) Handles Label2.Click
Dim con As New SqlConnection
Dim cmd As New SqlCommand
Dim rd As SqlDataReader
con.ConnectionString = "Data Source=localhost; Initial Catalog=user; Integrated Security= true"
cmd.Connection = con
con.Open()
cmd.CommandText = "select login, password from auth where login= '" & TextBox1.Text & "' and password = '" & TextBox2.Text & "' "
rd = cmd.ExecuteReader
If rd.HasRows Then
Welcome.Show()
Else
MessageBox.Show("Login Failed", "error")
End If
End Sub
End Class
У меня есть база данных на моем сервере sql под названием "пользователь", а у пользователя есть таблица с именем "dbo.auth". Когда я нажимаю Label2, visual basic говорит, что "con нельзя открыть" Я использую Workbench сервера MySQL. Есть ли способ исправить это? Сервер также работает в моей локальной сети.
Это работает для вас?
Imports System.Data.SqlClient
Public Class LoginForm1
Dim conn As SqlConnection
' TODO: Insert code to perform custom authentication using the provided username and password
' (See http://go.microsoft.com/fwlink/?LinkId=35339).
' The custom principal can then be attached to the current thread principal as follows:
' My.User.CurrentPrincipal = CustomPrincipal
' where CustomPrincipal is the IPrincipal implementation used to perform authentication.
' Subsequently, My.User will return identity information encapsulated in the CustomPrincipal object
' such as the username, display name, etc.
Private Sub OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK.Click
conn = New SqlConnection
conn.ConnectionString = "Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;"
Try
conn.Open()
MsgBox("Connected!")
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
Кроме того, я думаю, вы должны пометить ссылку ниже.
MySql
<>Sql
, пожалуйста, решите и определите, какую СУБД вы используете. Также вы используете пространства именSqlConnection
иSqlCommand
, если вы используетеMySql
это неправильно. Вам необходимо использовать пространства именMySqlConnection
иMySqlCommand
. ИМО есть и другие проблемы (не выбрасывание предметов и т. Д.), Но они не ваша проблема, которую вы видите.System.Data.SqlClient
именSystem.Data.SqlClient
предназначено специально для SQL Server. Если вы используете MySQL, вам нужно загрузить Connector / Net из MySQL и использовать члены пространства именMySQL.Data.MySqlClient
. Я мог бы представить, что есть соответствующий пакет NuGet, или вы можете установить его с веб-сайта MySQL и добавить ссылки вручную. Вам также необходимо убедиться, что используется строка подключения, специфичная для MySQL .