У меня есть простое приложение для форм Windows VB.net. У меня есть метод для открытия соединения с базой данных. Я использую два подключения MySql. В приведенном ниже методе видно, что мое первичное соединение открыто, и после этого открывается мое вторичное соединение. Оба соединения имеют разные строки соединений, но в очень редких случаях эти строки подключения могут быть одинаковыми, так что я не хочу открывать соединение дважды.Использование одного соединения, когда строка соединения одинакова
Dim MySqlConnPrimary As New MySqlConnection
Dim MySqlConnSecondary As New MySqlConnection
Public Sub OpenConnection(ByVal strConnectionStringPrimary As String, ByVal strConnectionStringSecondary As String)
Try
With MySqlConnPrimary
.ConnectionString = strConnectionStringPrimary
.Open()
End With
With MySqlConnSecondary
.ConnectionString = strConnectionStringSecondary
.Open()
End With
Catch ex As Exception
End Try
End Sub
В основном строки подключения будут различными, но в случае, если строки подключения одинаковы, то я не хочу, чтобы открыть ПОДСОЕДИНЕНИЙ несколько раз. Как мне это достичь? Должен ли я назначить MySqlConnPrimary MySqlConnSecondary, если строки подключения одинаковы?
Вы можете проверить состояние соединения, используя Имущество, названное: 'MySqlConnPrimary.ConnectionState' Проверьте его, используя if..else блок и код необходимые действия в соответствии с ним. – Mahadev
@ Махадев Спасибо за ваш быстрый ответ. Я хочу, чтобы, если строки подключения одинаковы, то и MySqlConnPrimary, и MySqlConnSecondary должны использовать 1 соединение, чтобы они открывались только один раз. –
Вы не должны открывать соединение; вместо этого откройте, выполните операцию, закройте. Это может устранить проблему. ([Объединение пулов] (https://en.wikipedia.org/wiki/Connection_pool) используется, чтобы сделать его эффективным.) –