2009-03-07 3 views
0
Private Sub cmdOK_Click() 
Adodc1.Recordset.MoveFirst 
Do While Not Adodc1.Recordset.EOF 
     If Adodc1.Recordset.Fields(0) <> txtuser.Text Or Adodc1.Recordset.Fields(1) <> txtPassword.Text Then 

      MsgBox "Please verify login details", vbInformation + vbOKOnly, "Login Denied" 
      txtuser.SetFocus 
      txtuser.Text = "" 
      txtPassword.Text = "" 
     Else 
      Unload Me 
      Load Main 
      Main.Show 
     End If 
     Adodc1.Recordset.MoveNext 
     Loop 
End Sub 

Я был бы признателен, если бы кто-то просмотрел фрагмент кода выше и сказал мне, если необходимо внести какие-либо изменения! Это код, который я использую для формы входа, которая подключается к базе данных SQL SERVER 2005! Теперь почему это не работает? Кажется, ТОЛЬКО извлекать данные из первой строки из двух столбцов, а не из следующих строк?Visual Basic Login Form Query

ответ

2

Я бы сделал шаг назад и переписал все это. Вы должны отправлять базу данных имя пользователя и пароль, не отправляя каждое имя пользователя и пароль в свое приложение и не зацикливаясь на нем. Пусть СУБД сделает для вас работу. Я также предлагаю вам воздержаться от хранения паролей в виде обычного текста (как кажется, вы делаете). Эта информация является общей и может быть найдена путем поиска, но если у вас возникли проблемы, отправьте сообщение.

+0

Я ценю ваши предложения и те, о которых я буду заботиться на более поздних этапах, но прямо сейчас приведенный выше код (насколько он вообще может быть) не ясен, я не могу найти с ним ошибки: s Почему он извлекает только первую строку? – 2009-03-07 01:18:10

+0

Почему он извлекает только первую строку? Кто может сказать? В вашем коде нет запроса. Вот почему colithium правильно говорит вам переосмыслить способ написания кода базы данных. Элементы управления DB-перетаскиванием - это то, что MS никогда не предлагала. – HardCode

+0

Затем вот часть, где она соединяется с БД --Adodc1.ConnectionString = "DRIVER = {SQL Server}; SERVER = MyServer \ SQLEXPRESS; Trusted_connection = yes; DATABASE = Testingz;" Adodc1.RecordSource = "Выбрать * из безопасности" Установить lblBind.DataSource = Adodc1 – 2009-03-07 07:30:08