Як захистити свої конфіденційні дані за допомогою форми для входу в систему Access

Поділитися зараз:

Форма входу є обов'язковою для баз даних, що містять конфіденційну інформацію. Виконайте наведені нижче дії, щоб ви могли створити власну форму для входу, щоб захистити свою базу даних від недійсного доступу.

Завантажити зараз

Якщо ви хочете почати користуватися цією функцією якомога швидше, ви можете:

Завантажте Зразок бази даних із кодами VBA зараз

В іншому випадку, якщо ви хочете зробити самостійно, ви можете прочитати вміст нижче.

Кроки для створення форми для входу в Access

1. Створіть таблицю входу

Перше, що нам потрібно зробити, це створити таблицю, яка буде зберігати всю інформацію для входу.

  1. Створіть нову таблицю та назвіть її як tbl_login.
  2. Відкрийте таблицю в поданні дизайну.
  3. Додайте наступні поля з відповідними типами даних:
Назва поля Тип даних
Ідентифікатор користувача Автономера
Ім'я Короткий текст
Прізвище Короткий текст
UserName Короткий текст
Пароль Короткий текст

 

  1. Відредагуйте маску введення пароля так, щоб вона відображалася у вигляді серії зірочок (*).Редагуйте маску введення пароля
  • Виберіть поле Пароль.
  • Перейдіть на вкладку Загальне> Маска введення> ...
  • Коли з’явиться Майстер введення маски, виберіть Пароль.
  • Натисніть "Готово".
  1. Відкрийте таблицю в поданні Таблиці даних і введіть перший запис (ваші дані для входу).Введіть дані для входу
  2. Закрийте таблицю та збережіть внесені зміни.

2. Створіть форму для входу

Створіть порожню форму з 2 текстовими полями та 2 командними кнопками (як показано нижче). Пропустити майстер командної кнопки.Створіть форму для входу

Пізніше ми будемо посилатися на ці елементи керування формою у нашому коді, тому було б найкраще перейменувати їх, щоб їх було легко ідентифікувати:

  • txt_username
  • txt_password
  • cmd_login
  • cmd_cancel

Далі змініть маску введення текстового поля пароля, щоб воно також відображалося у вигляді серії зірочок (*).

  1. У вікні дизайну виберіть текстове поле пароля.
  2. Відкрийте Аркуш властивостей (ALT + Enter).
  3. Перейдіть на вкладку Дані> Маска введення.
  4. Виберіть Пароль і натисніть Готово.

Тепер ми змінимо деякі властивості форми з естетичних міркувань і, найголовніше, щоб переконатися, що користувачі не можуть обійти цю форму, не ввівши правильні дані для входу.

  1. Під час перегляду дизайну виберіть форму (як показано нижче).Виберіть форму
  2. Відкрийте Аркуш властивостей (ALT + Enter) та оновіть такі властивості:
  • Відповідно до сформований таб
    • Заголовок: Вхід
    • Селектори записів: Ні
    • Кнопки навігації: Ні
    • Смуги прокрутки: ні
    • Стиль межі: діалогове вікно
    • Кнопка закриття: Ні
  • Відповідно до Інше таб
    • Спливаюче: Так
    • Модальний: Так
    • Швидке меню: Ні
  1. Збережіть форму як frm_login.

3. Додайте код

Додайте подію On Click до кнопки Login.

  1. Під час перегляду дизайну натисніть кнопку Увійти.
  2. Перейдіть до Аркуша властивостей> Вкладка подій> На клік> ...
  3. Виберіть Конструктор коду у меню «Вибрати конструктор» та натисніть «ОК».
  4. Це відкриє редактор VBA.
  5. Скопіюйте код нижче.
Private Sub cmd_login_Click()

  Dim db As DAO.Database
  Dim rst As DAO.Recordset
  Dim strSQL As String
 
  If Trim(Me.txt_username.Value & vbNullString) = vbNullString Then
    MsgBox prompt:="Username should not be left blank.", buttons:=vbInformation, title:="Username Required"
    Me.txt_username.SetFocus
    Exit Sub
  End If
 
  If Trim(Me.txt_password.Value & vbNullString) = vbNullString Then
    MsgBox prompt:="Password should not be left blank.", buttons:=vbInformation, title:="Password Required"
    Me.txt_password.SetFocus
    Exit Sub
  End If
 
  'query to check if login details are correct
  strSQL = "SELECT FirstName FROM tbl_login WHERE Username = """ & Me.txt_username.Value & """ AND Password = """ & Me.txt_password.Value & """"
 
  Set db = CurrentDb
  Set rst = db.OpenRecordset(strSQL)
  If rst.EOF Then
    MsgBox prompt:="Incorrect username/password. Try again.", buttons:=vbCritical, title:="Login Error"
    Me.txt_username.SetFocus
  Else
    MsgBox prompt:="Hello, " & rst.Fields(0).Value & ".", buttons:=vbOKOnly, title:="Login Successful"
    DoCmd.Close acForm, "frm_login", acSaveYes
  End If
 
 Set db = Nothing
 Set rst = Nothing

End Sub

Цей код:

  1. Перевірте, чи поля для імені користувача та пароля не залишені порожніми. Якщо вони є, з’явиться підказка.
  2. Перевірте правильність даних для входу, порівнявши їх зі значеннями в таблиці входу (tbl_login).
  3. Після підтвердження даних для входу з’явиться підказка з привітанням для користувача.

Наступним кроком є ​​додавання коду кнопки «Скасувати», щоб після натискання база даних закрилася.

  1. Додайте подію при натисканні до кнопки Скасувати (така сама процедура, як і кнопка Вхід).
  2. Скопіюйте код нижче.
Private Sub cmd_cancel_Click()
   DoCmd.Quit acQuitSaveAll
End Sub

4. Встановіть форму входу як форму відображення

Нарешті, встановіть форму входу як стандартну форму, яку користувачі бачитимуть після відкриття бази даних.

  1. Перейдіть у меню Файл> Параметри> Поточна база даних.
  2. Встановіть для форми відображення значення frm_login.
  3. Натисніть кнопку ОК.

Вам доведеться закрити базу даних і відкрити її знову, щоб побачити, як вона працює.

Відновіть свою базу даних доступу

Вітаємо! Тепер ви знаєте, як захистити свою цінну базу даних від недійсного доступу. Зараз я дам вам додаткову підказку. Якщо з незрозумілої причини ваша база даних була пошкоджена, НЕ панікуйте. DataNumen Inc., експерт у галузі технологій відновлення даних, пропонує програмне забезпечення для ремонту пошкоджений доступ база даних. Вашу базу даних все ще можна відновити.

Вступ автора:

Джейме Стек - експерт із відновлення даних у DataNumen, Inc., яка є світовим лідером у галузі технологій відновлення даних, в тому числі відновлення SQL та програмні продукти Excel для відновлення. Для отримання додаткової інформації відвідайте WWW.datanumen.com

Поділитися зараз:

Коментарі закриті.