Форма входу є обов'язковою для баз даних, що містять конфіденційну інформацію. Виконайте наведені нижче дії, щоб ви могли створити власну форму для входу, щоб захистити свою базу даних від недійсного доступу.
Завантажити зараз
Якщо ви хочете почати користуватися цією функцією якомога швидше, ви можете:
Завантажте Зразок бази даних із кодами VBA зараз
В іншому випадку, якщо ви хочете зробити самостійно, ви можете прочитати вміст нижче.
Кроки для створення форми для входу в Access
1. Створіть таблицю входу
Перше, що нам потрібно зробити, це створити таблицю, яка буде зберігати всю інформацію для входу.
- Створіть нову таблицю та назвіть її як tbl_login.
- Відкрийте таблицю в поданні дизайну.
- Додайте наступні поля з відповідними типами даних:
| Назва поля | Тип даних |
| Ідентифікатор користувача | Автономера |
| Ім'я | Короткий текст |
| Прізвище | Короткий текст |
| UserName | Короткий текст |
| Пароль | Короткий текст |
- Відредагуйте маску введення пароля так, щоб вона відображалася у вигляді серії зірочок (*).
- Виберіть поле Пароль.
- Перейдіть на вкладку Загальне> Маска введення> ...
- Коли з’явиться Майстер введення маски, виберіть Пароль.
- Натисніть "Готово".
- Відкрийте таблицю в поданні Таблиці даних і введіть перший запис (ваші дані для входу).
- Закрийте таблицю та збережіть внесені зміни.
2. Створіть форму для входу
Створіть порожню форму з 2 текстовими полями та 2 командними кнопками (як показано нижче). Пропустити майстер командної кнопки.
Пізніше ми будемо посилатися на ці елементи керування формою у нашому коді, тому було б найкраще перейменувати їх, щоб їх було легко ідентифікувати:
- txt_username
- txt_password
- cmd_login
- cmd_cancel
Далі змініть маску введення текстового поля пароля, щоб воно також відображалося у вигляді серії зірочок (*).
- У вікні дизайну виберіть текстове поле пароля.
- Відкрийте Аркуш властивостей (ALT + Enter).
- Перейдіть на вкладку Дані> Маска введення.
- Виберіть Пароль і натисніть Готово.
Тепер ми змінимо деякі властивості форми з естетичних міркувань і, найголовніше, щоб переконатися, що користувачі не можуть обійти цю форму, не ввівши правильні дані для входу.
- Під час перегляду дизайну виберіть форму (як показано нижче).
- Відкрийте Аркуш властивостей (ALT + Enter) та оновіть такі властивості:
- Відповідно до сформований таб
- Заголовок: Вхід
- Селектори записів: Ні
- Кнопки навігації: Ні
- Смуги прокрутки: ні
- Стиль межі: діалогове вікно
- Кнопка закриття: Ні
- Відповідно до Інше таб
- Спливаюче: Так
- Модальний: Так
- Швидке меню: Ні
- Збережіть форму як frm_login.
3. Додайте код
Додайте подію On Click до кнопки Login.
- Під час перегляду дизайну натисніть кнопку Увійти.
- Перейдіть до Аркуша властивостей> Вкладка подій> На клік> ...
- Виберіть Конструктор коду у меню «Вибрати конструктор» та натисніть «ОК».
- Це відкриє редактор VBA.
- Скопіюйте код нижче.
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
Цей код:
- Перевірте, чи поля для імені користувача та пароля не залишені порожніми. Якщо вони є, з’явиться підказка.
- Перевірте правильність даних для входу, порівнявши їх зі значеннями в таблиці входу (tbl_login).
- Після підтвердження даних для входу з’явиться підказка з привітанням для користувача.
Наступним кроком є додавання коду кнопки «Скасувати», щоб після натискання база даних закрилася.
- Додайте подію при натисканні до кнопки Скасувати (така сама процедура, як і кнопка Вхід).
- Скопіюйте код нижче.
Private Sub cmd_cancel_Click() DoCmd.Quit acQuitSaveAll End Sub
4. Встановіть форму входу як форму відображення
Нарешті, встановіть форму входу як стандартну форму, яку користувачі бачитимуть після відкриття бази даних.
- Перейдіть у меню Файл> Параметри> Поточна база даних.
- Встановіть для форми відображення значення frm_login.
- Натисніть кнопку ОК.
Вам доведеться закрити базу даних і відкрити її знову, щоб побачити, як вона працює.
Відновіть свою базу даних доступу
Вітаємо! Тепер ви знаєте, як захистити свою цінну базу даних від недійсного доступу. Зараз я дам вам додаткову підказку. Якщо з незрозумілої причини ваша база даних була пошкоджена, НЕ панікуйте. DataNumen Inc., експерт у галузі технологій відновлення даних, пропонує програмне забезпечення для ремонту пошкоджений доступ база даних. Вашу базу даних все ще можна відновити.
Вступ автора:
Джейме Стек - експерт із відновлення даних у DataNumen, Inc., яка є світовим лідером у галузі технологій відновлення даних, в тому числі відновлення SQL та програмні продукти Excel для відновлення. Для отримання додаткової інформації відвідайте WWW.datanumen.com



