webForumDet fria alternativet

update fråga

3 svar · 265 visningar · startad av MizzK

MizzKMedlem sedan juni 2003410 inlägg
#1

skulle vilja omvandla denna insert sats till en update sats.. försökt flera olika varianter men får bara:Syntaxfel i UPDATE-uttryck.

hur gör jag?

  Dim strSql As String = "INSERT INTO Bild ( titel, beskrivning, bildData, bildTyp, bildStorlek, layoutNr ) VALUES (@bildTitel, @bildBeskrivning, @bildbin, @bildcontenttype, @bildsize)"

ps. alla är text förutom bildbin som är en byte eller ActiveX-objekt som det heter i access

@ndersMedlem sedan juni 200032 969 inlägg
#2

Syntaxen är:

UPDATE tabellnamn SET fält1='värde1', fält2='värde2' WHERE fält3='värde3'

Det borde vara all information du behöver. Annars får du återkomma och visa dina försök.

MizzKMedlem sedan juni 2003410 inlägg
#3

Först testade jag detta!

Dim strSql As String = "UPDATE Bild SET titel=@bildTitel, beskrivning=@bildBeskrivning, bildData= '@bildbin' , bildTyp=@bildcontenttype, bildStorlek=@bildsize WHERE (Bild.bildNr = ' & bildNr & ');"

då säger den: Typblandningsfel i villkorsuttryck. spelar ingen roll om jag har '' eller inte på bildbin.

sedan har jag testat:

Dim strSql As String = "UPDATE Bild SET titel='" & bildTitel & "',beskrivning='" & bildBeskrivning & "', bildData = ' & bildbin & ' ,bildTyp='" & bildcontenttype & "', bildStorlek='" & bildsize & "' WHERE (Bild.bildNr = " & bildNr & ");"

då går den igenom och den uppdaterar databasen, MEN bildBin verkar den inte skriva ngt till. har skrivit ut svaret på sql frågan och den skriver då ut:

UPDATE Bild SET titel='logo',beskrivning='logo', bildData = ' & bildbin & ' ,bildTyp='image/gif', bildStorlek='5252' WHERE (Bild.bildNr = 1);

dvs, inget värde på bildBin. BildBin är satts som active-X i db:n samt är en byte i koden. vad e felet?

skulle gärna vilja få frågan att fungera med @för då kör den igenom olika parameters som jag satt ut.(Insert frågan fungerar prima)

@ndersMedlem sedan juni 200032 969 inlägg
#4

MizzK skrev:

då säger den: Typblandningsfel i villkorsuttryck. spelar ingen roll om jag har '' eller inte på bildbin.

Är det inte where-delen som är problemet då? Är inte bildnr ett tal? Så här borde det se ut:

... (Bild.bildNr = " & bildNr & ");"
140 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
137 ms — hämta tråd, inlägg och bilagor (db)