2014-10-29 4 views
1

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

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click 
     MsgBox("Meld enige gebreken bij je leraar samen de naam van de computer (deze staat op de stikker die op het apparaat te vinden is)") 

    Dim myHost As String = Dns.GetHostName 
    Dim ipEntry As IPHostEntry = Dns.GetHostEntry(myHost) 
    Dim ip As String = "" 
    Dim nee As String 
    Dim user As String 
    nee = "nee" 

    dbconn = New MySqlConnection("Data Source=172.17.80.153;user id=connectinguser;password=123456;database=vbtest;") 
    Try 
     dbconn.Open() 
    Catch ex As Exception 
     MsgBox("Error in connection, please check Database and connection server.") 
    End Try 

    For Each tmpIpAddress As IPAddress In ipEntry.AddressList 
     If tmpIpAddress.AddressFamily = Sockets.AddressFamily.InterNetwork Then 
      Dim ipAddress As String = tmpIpAddress.ToString 
      ip = ipAddress 
      Exit For 
     End If 
    Next 



    If ip = "" Then 
     Throw New Exception("No 10. IP found!") 
    End If 

    If TypeOf My.User.CurrentPrincipal Is System.Security.Principal.WindowsPrincipal Then 
     ' The application is using Windows authentication. 
     ' The name format is DOMAIN\USERNAME. 
     Dim parts() As String = Split(My.User.Name, "\") 
     Dim username As String = parts(1) 

     Dim uname As String = My.User.Name 

     uname = uname.Remove(0, 10) 
     user = uname 

    End If 

    sql = "INSERT INTO tbl_nee(Gebruikersnaam,Computernaam,IPAddress, Keuze) VALUES('" & user & "', '" & My.Computer.Name & "', '" & ip & "', '" & nee & "')" 

    sql = "INSERT INTO tbl_alles(Gebruikersnaam,Computernaam,IPAddress, Keuze) VALUES('" & user & "', '" & My.Computer.Name & "', '" & ip & "', '" & nee & "')" 



    Try 
     dbcomm = New MySqlCommand(sql, dbconn) 
     dbread = dbcomm.ExecuteReader() 
     dbread.Close() 
    Catch ex As Exception 
     MsgBox("Error in saving to Database. Error is :" & ex.Message) 
     dbread.Close() 
     Exit Sub 
    End Try 

    Me.Close() 
End Sub 

это немного грязный, но я не очень хороший кодировщик, так это просто все виды вещей, которые найдены, чтобы заставить его работать.

ответ

1
Dim sql1 As String = "" 
Dim sql2 As String = "" 

sql1 = "INSERT INTO tbl_nee(Gebruikersnaam,Computernaam,IPAddress, Keuze) VALUES('" & user & "', '" & My.Computer.Name & "', '" & ip & "', '" & nee & "')" 

sql2 = "INSERT INTO tbl_alles(Gebruikersnaam,Computernaam,IPAddress, Keuze) VALUES('" & user & "', '" & My.Computer.Name & "', '" & ip & "', '" & nee & "')" 

Dim sql = String.Concat(sql1, ";", sql2) 


    Try 
     dbcomm = New MySqlCommand(sql, dbconn) 
     dbread = dbcomm.ExecuteReader() 
     dbread.Close() 
    Catch ex As Exception 
     MsgBox("Error in saving to Database. Error is :" & ex.Message) 
     dbread.Close() 
     Exit Sub 
    End Try 
+0

спасибо, но как я могу их отменить сейчас? просто с dim sql1 в виде строки и dim sql2 в виде строки? с более? потому что он все еще не работает для меня. –

+0

См. Отредактированный код – Josef

+0

Вставить код ошибки здесь. Я не вижу, какую ошибку вы получите. – Josef