[Visual Basic] VB: SQL für Access-DB

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von juppwatis, 28. Dezember 2010 .

Schlagworte:
  1. 28. Dezember 2010
    VB: SQL für Access-DB

    Hallo,

    bin gerade an einer SQL Anweisung für eine Access-DB. Jetzt habe ich die Variable sqltext als String. Diese will ich wie folgt befüllen:

    Code:
    sqltext = "INSERT INTO tblAnwesenheit (mit_id_f, anw_bis)" & vbCrLf & _
    "VALUES (" & Str(cboUser) & "," & Str(CDbl(gehen)) & ")" & vbCrLf & _
    "WHERE mit_id_f = " & Str(cboUser) & " AND & ;"
    was ist daran falsch? es heißt immer, dass das Semikolon fehlt, dabei ist es doch da am Ende!?
     
  2. 28. Dezember 2010
    AW: [SQL]

    Wenn ich es richtig sehe:
    Code:
    sqltext = "INSERT INTO tblAnwesenheit (mit_id_f, anw_bis)" & vbCrLf & _
    "VALUES (" & Str(cboUser) & "," & Str(CDbl(gehen)) & ")" & vbCrLf & _
    "WHERE mit_id_f = " & Str(cboUser) [COLOR="Red"]& " AND " & ";"[/COLOR]
    
    und außerdem fehlt bei dir nach AND noch eine bedingung oder hast du sie hier vergessen??
    also den abschnitt : " " & Str(cboUser) & " AND **HIER** " & ";" "

    mfg
     
  3. 28. Dezember 2010
    AW: [SQL]

    haste recht - das fehlt. aber wenn icih es wegmache u der code dann nur noch so aussieht:

    Code:
    sqltext = "INSERT INTO tblAnwesenheit (mit_id_f, anw_bis)" & vbCrLf & _
    "VALUES (" & Str(cboUser) & "," & Str(CDbl(gehen)) & ")" & vbCrLf & _
    "WHERE mit_id_f = " & Str(cboUser) & " ;"
    
    geht er auch nicht
     
  4. 28. Dezember 2010
    AW: [SQL]

    sind deine felder: mit_id_f und anw_bis, varchar, char,string felder?
    wenn ja musst du natürlich auch noch Ticks setzen

    Code:
    sqltext = "INSERT INTO tblAnwesenheit (mit_id_f, anw_bis)" & vbCrLf & _
    "VALUES ([COLOR="Red"]"'"[/COLOR] & Str(cboUser) & [COLOR="Red"]"'"[/COLOR],[COLOR="#ff0000"]"'"[/COLOR] & Str(CDbl(gehen)) & [COLOR="#ff0000"]"'"[/COLOR])" & vbCrLf & _
    "WHERE mit_id_f = [COLOR="Red"]"'"[/COLOR] & Str(cboUser) & [COLOR="#ff0000"]"'"[/COLOR] & " AND " & ";"
    
     
  5. 28. Dezember 2010
    AW: [SQL]

    nein:
    mit_id_f ist ein Feld in der Tabelle Anwesenheit der Datenbank und
    anw_bis ist auch ein Feld der selben Tabelle.

    Ich will das dann ausführen durch:
    Code:
    CurrentDb.Execute (sqltext)
     
  6. 28. Dezember 2010
    AW: [SQL]

    so ich habs mal in eine Zeile gepackt und bei mir kommt n richtiges selectstatement raus
    Einmal mit Ticks
    Code:
     sqltext = "INSERT INTO TBLAnwesenheit (mit_id_f, anw_bis) values ('" & Str(cboUser) & "','" & Str(CDbl(gehen)) & "') WHERE mit_id_f = '" & Str(cboUser) & "' AND ;"
    
    und einmal ohne
    Code:
     sqltext = "INSERT INTO TBLAnwesenheit (mit_id_f, anw_bis) values (" & Str(cbouser) & "," & Str(CDbl(gehen)) & ") WHERE mit_id_f = " & Str(cbouser) & " AND ;"
    
    und nochmal ohne das AND
    Code:
     sqltext = "INSERT INTO TBLAnwesenheit (mit_id_f, anw_bis) values (" & Str(cbouser) & "," & Str(CDbl(gehen)) & ") WHERE mit_id_f = " & Str(cbouser) & ";"
    
    try and error^^
     
  7. 28. Dezember 2010
    AW: [SQL]

    danke schonmal...aber es geht irgendwie alles nicht. ich geb einfach auf jetzt - ist doch man!
     
  8. 29. Dezember 2010
    AW: [SQL]

    Code:
    
    sqltext = "INSERT INTO tblAnwesenheit (mit_id_f, anw_bis)" _
    "VALUES () & cboUser & ( "," & Str(CDbl(gehen) ")" & _
    "WHERE mit_id_f LIKE " & Str(cboUser))"
    
    
    Hoffe ich hab kein Fehler gebaut, du musst bei WHERE schauen ob es int oder String ist
    und bei Steueremementen musst du die Eigemschaft immer abfragen (Text oder Value usw.)
     
  9. 30. Dezember 2010
    AW: [SQL]

    So einfach würde ich nicht aufgeben. Ich kenne mich mit Access-Datenbanken nicht aus, aber vielleicht wäre es ja auch eine Möglichkeit SqlCommands zu verwenden und dann die Parameters-Collection zu nutzen.

    SqlCommand-Klasse (System.Data.SqlClient)

    Ganz nebenbei schützt das auch noch vor SQL-Injection. Da ich das Einsatzgebiet Deines Codes aber nicht kenne, das nur am Rande.

    Hoffe es hilft.
    BG MaxDev
     
  10. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.