Izzy Decorte Ответов: 2

Используя классов filedialog, чтобы открыть доступ к БД , то использовать логин из БД и сохранить подключение


Привет,
Я пытаюсь написать базовое программное обеспечение для клиентской базы данных для моего отца с помощью basic vb.net навыки.

У него разные типы бизнеса, поэтому он хочет хранить клиентов в разных базах данных.

Я пытаюсь написать код для экрана входа в систему, который открывает файловый журнал для загрузки в выбранную базу данных access.
После выбора он должен появиться в текстовом поле
он должен иметь возможность сохранять местоположение для будущих входов в систему.

Как только вы нажмете кнопку подключения, вы получите еще одну панель с экраном входа для подключения к этой базе данных. Учетные данные для входа находятся в базе данных.

спасибо всем за помощь новичку!

Что я уже пробовал:

на моем экране входа в систему у меня есть кнопка "выбрать базу данных", текстовое поле и кнопка "подключиться"

Form_Login открытый класс
private sub btn_choose_click(sender as object, e as eventargs) обрабатывает btn_choose.Щелчок

Dim strtext как строка
OpenFileDialog1.InitialDirectory = "C:\mydbsoft"
OpenFileDialog1.Title = "Выберите свою базу данных"
OpenFileDialog1.Метод showdialog()

strtext = OpenFileDialog1.имя файла
txtLocation.text = strtext

конец подводной лодки

private sub btn_connect_click(sender as object, e as eventargs) обрабатывает btn_connect.Щелчок)

"здесь мне нужен код для фактического подключения к той базе данных, которую я "загрузил""

конец подводной лодки

частный суб btn_login_click
(sender as object, e as eventargs) handles btn_login.Click)

"here i need code to login with credentials that are stored in a table in that database"

end sub

end class

2 Ответов

Рейтинг:
12

OriginalGriff

Мы более чем готовы помочь тем, кто застрял, но это не значит, что мы здесь, чтобы сделать все это для вас! Мы не можем сделать всю работу, вам либо платят за это, либо это часть ваших оценок, и было бы совсем несправедливо, если бы мы сделали все это за вас.

Поэтому нам нужно, чтобы вы сделали работу, и мы поможем вам, когда вы застряли. Это не значит, что мы дадим вам пошаговое решение, которое вы можете сдать!
Начните с объяснения, где вы находитесь в данный момент и каков следующий шаг в этом процессе. Затем расскажите нам, что вы пытались сделать, чтобы этот следующий шаг сработал, и что произошло, когда вы это сделали.

Я бы начал с просмотра OpenFileDialog и формата строк подключения доступа:
Класс OpenFileDialog (System.Окна.Формы) | Microsoft Docs[^]

Строки подключения доступа - ConnectionStrings.com[^]

Но... использование разных БД для каждого клиента-плохая идея. Гораздо лучше сохранить одну БД и таблицу клиентов, а затем связать друг с другом запись таблицы с конкретным клиентом.
Это намного проще в управлении, и намного, намного проще, когда вы хотите начать анализировать данные позже.


Рейтинг:
0

Izzy Decorte

Еще раз здравствуйте, прошу прощения за то, что не показываю свой прогресс, мне не платят за это программирование, но с любовью от моего отца он все еще управляет своими клиентами в 20 файлах доступа, которые он сделал 20 лет назад.
вот мой loginscreencode, который уже сделан. (если вам нужны скриншоты или фильм, как выглядит мое программное обеспечение, спросите , я постараюсь предоставить.
Как вы можете видеть, экран входа в систему в основном выполнен, но мои знания о подключении и сохранении подключений к базе данных в некотором роде нулевые.

Public Class LoginScreen

    Private Sub Loginscreen_load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        ProgressBar2.Minimum = 0
        ProgressBar2.Maximum = 100
        ProgressBar2.Visible = False
        Panel1.Visible = False

    End Sub
    Private Sub btnExit_Click(sender As Object, e As EventArgs) Handles btnExit.Click
        Application.Exit()
    End Sub
    Private Sub btnExit2_Click(sender As Object, e As EventArgs) Handles btnExit2.Click
        Application.Exit()
    End Sub

    Private Sub tmrLogin_Tick(sender As Object, e As EventArgs) Handles tmrLogin.Tick
        ProgressBar2.Value = ProgressBar2.Value + 20
        lblLoginMessages.Text = ProgressBar2.Value & "%" & " Completed"
        If ProgressBar2.Value >= 100 Then
            tmrLogin.Enabled = False
            If txtUser.Text = "azert" And txtPassword.Text = "azert" Then
                ProgressBar2.Value = 0
            Else
                lblLoginMessages.Text = "Wrong credentials, Try again!"
                pboxClosed.Visible = True
                PboxOpen.Visible = False

                ProgressBar2.Value = 0
                txtPassword.Text = ""
                txtUser.Text = ""
            End If
        End If
    End Sub

    Private Sub btnLogin_Click(sender As Object, e As EventArgs) Handles btnLogin.Click
        ProgressBar2.Visible = True
        tmrLogin.Enabled = True

        pboxClosed.Visible = False
        PboxOpen.Visible = True
        ''navraag doen om dit correct in te stellen! ! ! ! !! 
        'If ProgressBar2.Value = 100 Then
        'lblLoginMessages.Text = "Logging in..."
        Me.Hide()
            Mainscreen.Show()
        'End If

    End Sub

    Private Sub btnDBConnect_Click(sender As Object, e As EventArgs) Handles btnDBConnect.Click
        If Panel1.Visible = False Then
            Panel1.Visible = True
        Else
            Application.Exit()

        End If
    End Sub

    Private Sub txtUser_TextChanged(sender As Object, e As EventArgs) Handles txtUser.TextChanged

    End Sub

    Private Sub btnChoose_Click(sender As Object, e As EventArgs) Handles btnChoose.Click
        Dim strtext As String
        OpenFileDialog1.InitialDirectory = "F:\fordad\databaseVBNET"
        OpenFileDialog1.Title = "Choose your Database"
        OpenFileDialog1.ShowDialog()

        strtext = OpenFileDialog1.FileName
        txtDatabaselocationshow.Text = strtext
    End Sub

    Private Sub tmrshowloginpanel_Tick(sender As Object, e As EventArgs) Handles tmrshowloginpanel.Tick
        Panel1.Width += 5
        If Panel1.Width >= 700 Then
            tmrshowloginpanel.Stop()
        End If
    End Sub

End Class