Imports Oracle.ManagedDataAccess.Client Public Class SQLConfigAutoIndex Private Sub btnVorschlag_Click(sender As Object, e As EventArgs) Handles btnVorschlag.Click TestSQL(cmbConnection.SelectedValue, SQL_ERGEBNISTextBox.Text) End Sub Private Sub TestSQL(conid As Integer, sql_Vorschlag As String) Try Dim connectionString As String Dim i As Integer connectionString = ClassFormFunctions.GetConnectionString(conid) If connectionString <> "" Then If connectionString.Contains("Initial Catalog=") Then Dim sqlCnn As SqlClient.SqlConnection Dim sqlCmd As SqlClient.SqlCommand Dim adapter As New SqlClient.SqlDataAdapter Dim NewDataset As New DataSet sqlCnn = New SqlClient.SqlConnection(connectionString) sqlCnn.Open() sqlCmd = New SqlClient.SqlCommand(sql_Vorschlag, sqlCnn) adapter.SelectCommand = sqlCmd adapter.Fill(NewDataset) Dim msg As String For i = 0 To NewDataset.Tables(0).Rows.Count - 1 msg &= NewDataset.Tables(0).Rows(i).Item(0) & vbNewLine If i = 30 Then Exit For End If Next adapter.Dispose() sqlCmd.Dispose() sqlCnn.Close() MsgBox("Folgende Daten wurden erfolgreich abgerufen: " & vbNewLine & vbNewLine & msg & vbNewLine & vbNewLine & "Das Ergebnis wurd auf 30 Zeilen eingeschränkt!", MsgBoxStyle.Information) ElseIf connectionString.StartsWith("Data Source=") And connectionString.Contains(";Persist Security Info=True;User Id=") Then Dim sqlCnn As OracleConnection Dim sqlCmd As OracleCommand Dim adapter As OracleDataAdapter Dim NewDataset As DataSet sqlCnn = New OracleConnection(connectionString) ' Try sqlCnn.Open() sqlCmd = New OracleCommand(sql_Vorschlag, sqlCnn) adapter.SelectCommand = sqlCmd adapter.Fill(NewDataset) Dim msg As String For i = 0 To NewDataset.Tables(0).Rows.Count - 1 msg &= NewDataset.Tables(0).Rows(i).Item(0) & vbNewLine If i = 30 Then Exit For End If Next adapter.Dispose() sqlCmd.Dispose() sqlCnn.Close() MsgBox("Folgende Daten wurden erfolgreich abgerufen: " & vbNewLine & vbNewLine & msg & vbNewLine & vbNewLine & "Das Ergebnis wurd auf 30 Zeilen eingeschränkt!", MsgBoxStyle.Information) End If Else MsgBox("Keine gültige ConnectionID", MsgBoxStyle.Exclamation) End If Catch ex As Exception ClassLogger.Add(" - Unvorhergesehener Fehler bei TestSQL - Fehler: " & vbNewLine & ex.Message) MsgBox(ex.Message, MsgBoxStyle.Critical, "Fehler bei TestSQL:") End Try End Sub Private Sub frmSQLSuggestion_Load(sender As Object, e As EventArgs) Handles Me.Load 'TODO: Diese Codezeile lädt Daten in die Tabelle "MyDataset.TBDD_CONNECTION". Sie können sie bei Bedarf verschieben oder entfernen. Me.TBDD_CONNECTIONTableAdapter.Connection.ConnectionString = MyConnectionString Me.TBDD_CONNECTIONTableAdapter.Fill(Me.MyDataset.TBDD_CONNECTION) Dim DT As DataTable = ClassDatabase.Return_Datatable("SELECT * FROM TBDD_INDEX_AUTOM WHERE GUID = " & CURRENT_INDEXAUTO) If DT.Rows.Count = 1 Then Me.cmbConnection.SelectedValue = DT.Rows(0).Item("CONNECTION_ID") SQL_ERGEBNISTextBox.Text = DT.Rows(0).Item("SQL_RESULT") End If End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click frmConnections.ShowDialog() Me.TBDD_CONNECTIONTableAdapter.Fill(Me.MyDataset.TBDD_CONNECTION) End Sub Private Sub Button2_Click(sender As Object, e As EventArgs) Handles btnsave.Click Try Dim origresultstring = ClassDatabase.Execute_Scalar("SELECT SQL_RESULT FROM TBDD_INDEX_AUTOM WHERE GUID = " & CURRENT_INDEXAUTO, MyConnectionString, True) 'Dim origConnection = ClassDatabase.Execute_Scalar("SELECT CONNECTION_ID FROM TBDD_INDEX_AUTOM WHERE GUID = " & CURRENT_INDEXAUTO, True) 'If origConnection Is DBNull Then 'End If Dim insresultstring = SQL_ERGEBNISTextBox.Text.Replace("'", "''") If insresultstring <> origresultstring Then Dim cmd As String cmd = "UPDATE TBDD_INDEX_AUTOM SET CONNECTION_ID = " & cmbConnection.SelectedValue & ",SQL_RESULT = '" & insresultstring & "',CHANGED_WHO = '" & _ Environment.UserName & "' WHERE GUID = " & CURRENT_INDEXAUTO If ClassDatabase.Execute_non_Query(cmd, True) = True Then lblSave.Text = "SQL-Daten erfolgreich gespeichert - " & Now Me.lblSave.Visible = True Else Me.lblSave.Visible = False End If Else Me.lblSave.Visible = True lblSave.Text = "Keine Änderungen vorhanden" End If Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.Critical, "Error in Save SQL IndexAuto:") End Try End Sub End Class