webForumDet fria alternativet
Logga in / Bli medlem

update vs. insert

ASP

7 svar · 204 visningar · startad av henrik2001

Medlem sedan dec. 2000241 inlägg
Trådstart#1

vilka fördelar/nackdelar finns det när man använder update/insert ?
vilket är bra, och vilket är dåligt?

jag har sett några diskussioner om det, men...?

Medlem sedan dec. 19998 577 inlägg
#2

Dom ersätter inte varandra.

Update uppdaterar en post som redan finns.

Insert lägger till en ny post.

Mvh, Vide

Medlem sedan dec. 2000241 inlägg
#3

okej!
nu klarnade det!
:)

Medlem sedan feb. 20012 412 inlägg
#4

Eftersom de flesta har problem med Update anser jag att det inte är att rekommendera. Vid flertalet tillfällen här på listan har "vi" inte löst Update problemen. Men med Insert kommandot har det funkat utmärkt. Trots allt kan du sätta vilkoren på Insert kommandot så att det uppdaterar en existerande post. Men smaken är som baken...

Mvh
jörgen

Medlem sedan dec. 19998 577 inlägg
#5

vad menar du jorgen? Det är ju två helt olika saker...

Medlem sedan juni 200032 967 inlägg
#6

Trots allt kan du sätta vilkoren på Insert kommandot så att det uppdaterar en existerande post.

nu börjar det här blir riktigt intressant. jag stämmer in i vides huh? och slänger dessutom in jättefrågande smiley: :q

Medlem sedan feb. 20012 412 inlägg
#7

Okey, Måste erkänna att jag inte läste frågan ordentligt innan jag svarade, men kan ändå visa hur jag valde att göra istället för det sättet som skapat problem för många.

Hämtar den posten du vill editera och exempelvis lägger de värdena i ett formulär typ:

<input type="text" size="40" name="Beskrivning" value="<%= RS("beskrivning") %>">

Efter det du ändrat de du vill använder du Replace Request för att ersätta de gamla värden i posten. Typ så här:

<%

beskrivning = Replace(Request("beskrivning"), "'", "''")

id = Request("id")

Set Connection = Server.CreateObject("ADODB.Connection")

Connection.Open "DSN="

SQLStmt = "UPDATE Tabell set beskrivning='" & beskrivning & "' where id=" & id & " "

Set RS = Connection.Execute(SQLStmt)
%>

Vist du använder Update här med men inte på det sättet som vanligtvis skapar problem nämligen:

<%

RecSet.Open redigera, Connect, AdOpenDynamic, AdLockOptimistic

RecSet("Beskrivning") = Request.Form("beskrivning")

RecSet.Update %>

Alttså använd replace.request istället för request.form, vilket funkat bra för mig vilket inte request.form har gjort av någon okänd anledning. Detta blev mycket vimsigt men hoppas ni förstår min tanke gång.

mvh Jörgen

Medlem sedan dec. 19998 577 inlägg
#8

Båda dina exempel utgår ju ifrån en update... ingen av dem har med insert att göra :)

En insert skapar en ny post:

SQL = "INSERT INTO tabell(namn) VALUES('Vide')"

Mvh, Vide

258 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)