devotionMedlem sedan jan. 20013 582 inlägg :e
Hej!
Hej kan man uppdatera delar av ett värde i ett fält? Jag har ett noteringsfält, där jag lägger in uppgifter var en artikel är inköpt. Men det kan ju även finnas ändra uppgifter där som jag s a s vill ha kvar.
Exempel:
I fältet står följande:
Artikel inköpt hos Storel
Obs! pris 300 kr
Sedan uppdaterar jag posten dvs ändrar leverantör till Solar. Då vill jag att et ska stå:
Artikel inköpt hos Solar
Obs! Pris 300 kr
dvs endast inköpsinformationen skall ändras det andra ska stå kvar!
Hur kan man lösa detta?
Sedan undrar jag hur man lägger in "radbrytningar" i databasen. Jag vill ju att alla noteringar ska skrivas ut under varandra inte som en enda lång sträng?
Databas Access
Mvh
Henrik
@ndersMedlem sedan juni 200032 969 inlägg update tbl set fält = replace(fält, 'Storel', 'Solar')
Hur ska du veta var radbrytningarna ska vara?
devotionMedlem sedan jan. 20013 582 inlägg hej!
Det är väl det som är det kluriga... finns det redan text i fältet behöver det ju infogas en radbrytning innan nästa text ska in, men är det ingen text i fältet så behövs det ju ingen radbrytning liksom...
Henrik
@ndersMedlem sedan juni 200032 969 inlägg Lägg in en radbrytning först i strängen du infogar?
Antingen kan du göra en select först för att se om fältet är tomt (null?) eller så kan du kolla med ett iif-uttryck direkt i update-frågan om fältet är tomt (null?).
Eller helt enkelt tycka att det är OK med en radbrytning först i fältet, och ta bort det vid presentationen.
devotionMedlem sedan jan. 20013 582 inlägg ja det skulle ju funka, hur gör man det?
@ndersMedlem sedan juni 200032 969 inlägg Har redigerat mitt inlägg ovan.
Var gör du updates ifrån? asp-kod?
strFoo = vbcrlf & strFoo
devotionMedlem sedan jan. 20013 582 inlägg ja, från asp-kod!
Om det är första posten så får ju även den en radbrytning... Hur gör man för att få bort den när man skriver ut datat, så det blir snyggt ;)
Henrik
@ndersMedlem sedan juni 200032 969 inlägg Om du inte läste min redigering ovan:
@nders skrev:
Antingen kan du göra en select först för att se om fältet är tomt (null?) eller så kan du kolla med ett iif-uttryck direkt i update-frågan om fältet är tomt (null?).
Annars kan man ju kanske göra så här:
strFoo = replace(strFoo, vbcrlf, "<br>")
if left(strFoo, 4) = "<br>" then strFoo = right(strFoo, len(strFoo) - 4)
devotionMedlem sedan jan. 20013 582 inlägg Oj, nä jag tittade i fel inlägg tydligen... :)
Jag tycker nog lösningen med att kolla direct i sql med en iif-uttryck vore det snyggaste...
Då är ju datat rätt och klart, behöver man inte göra något med det när man skriver ut det...
Hur skulle en sådan select se ut....
Mvh
Henrik
@ndersMedlem sedan juni 200032 969 inlägg Det var inte select-frågan jag tänkte på, utan updaten.
Men jag förstår inte riktigt meningen med att lagra flera saker i samma fält? :)
devotionMedlem sedan jan. 20013 582 inlägg nä, inte jag heller, men nu har dom som gjort databasstrukturen bestämt att det ska vara så...
Oj, updaten menar jag ju givetvis...
strSQL = "UPDATE tblmaterial SET Modified = #" & Now() & "#, ArtNr = '" & strEnumber & "', ArtName = '" & strArticleName & "', Price = " & iArticlePrice & ", [Note] = '" & strNote & "' " &_
"WHERE Id = " & iArticleId & ""
//H
devotionMedlem sedan jan. 20013 582 inlägg Någon som har lust att hjälpa till med iifsats... :)
devotionMedlem sedan jan. 20013 582 inlägg hmmm, funkar inte riktigt...
strSQL = "UPDATE tblmaterial SET Modified = Now(), ArtNr = '" & strEnumber & "', ArtName = '" & strArticleName & "', Price = " & iArticlePrice & ", " &_
"[Note] = replace([Note], 'Ahlsell', '" & strNote & "') " &_
"WHERE Id = " & iArticleId
objConn.Execute strSQL,, 128
Ger:
Feltyp:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][Drivrutin för ODBC Microsoft Access] Odefinierad funktion 'replace' i uttryck.
/uppdragNu/updateArticle.asp, line 94
Finns det inte stöd för replace i MsJet (access)
Mvh
Henrik
@ndersMedlem sedan juni 200032 969 inlägg Hmm, det kanske inte gör det?
Då får du nog hämta ut innehållet, och göra replacen i ASP-koden, och sedan ställa en UPDATE-fråga.
mvh
devotionMedlem sedan jan. 20013 582 inlägg okodoki... testar det....
Mvh
Henrik