/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Dynamisk SQL streng
Fra : Martin_P


Dato : 13-08-02 09:01

Jeg sad i aftes og legede lidt med SQL og variabler - og det lykkedes
også ganske godt, MEN der er et lille problem....Først koden :

<%

dbPath = "db.mdb"
Set DB = Server.CreateObject("ADODB.Connection")
DB.Open "PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=" & dbPath

tabel = request.querystring("side")
id = request.querystring("id")
Dim check


sql = "UPDATE " & tabel & " SET "
for each check in request.form
   response.write "indtastet i " & check & " : "
   sql = sql + check & "= '"
   response.write request.form.item(check)
   sql=sql + request.form.item(check) & "', "
   response.write("<br>")
next

sql = sql & " tom='' WHERE ID = "& id

set rs = db.execute(sql)

DB.close
set rs = nothing
%>


Det virker såmænd ok - men her kommer en lille forklaring. Siden
bliver kaldt fra en form med action="update.asp?side=forside&id=1"

Men da jeg laver sql strengen dynamisk med bl.a. ,(komma) tegnet,
bliver der i sidste variable også sat denne , - det har jeg løst ved
at sætte tom='' ind som i kan se, men det betyder at jeg skal have en
kolonne i tabellen der hedder tom, samt en kolonne der hedder
INDSEND(kommer fra submit knappen) - kan man på nogen måde komme ud af
det? Jeg har overvejet noget med LEN(RIGHT), men har ikke helt kunnet
selv se mig ud af det...

Med venlig hilsen
Martin_P

 
 
Peter Lykkegaard (13-08-2002)
Kommentar
Fra : Peter Lykkegaard


Dato : 13-08-02 09:28


"Martin_P" <mp@XXXalkaline-batteries.dk> wrote in message
news:nmehluc9s0eb3vq163pb6lqo1r27ilno80@4ax.com...

> Men da jeg laver sql strengen dynamisk med bl.a. ,(komma) tegnet,
> bliver der i sidste variable også sat denne ,

Du kan bruge Left(sql, Len(sql)-1) for at blive fri for det overflødige
komma

En anden mulighed at lave en alm for løkke med en tæller, hvor du ikke
sætter kommaet i det sidste gennemløb

mvh/Peter Lykkegaard



Martin_P (13-08-2002)
Kommentar
Fra : Martin_P


Dato : 13-08-02 09:44

On Tue, 13 Aug 2002 10:27:55 +0200, "Peter Lykkegaard"
<polonline@hotmail.com> wrote:

>
>"Martin_P" <mp@XXXalkaline-batteries.dk> wrote in message
>news:nmehluc9s0eb3vq163pb6lqo1r27ilno80@4ax.com...
>
>> Men da jeg laver sql strengen dynamisk med bl.a. ,(komma) tegnet,
>> bliver der i sidste variable også sat denne ,
>
>Du kan bruge Left(sql, Len(sql)-1) for at blive fri for det overflødige
>komma
Mange tak! Det vil jeg straks prøve!! Så er det vel bare et spørgsmål
om at skrive -1 op til et eller andet(som jeg lige skal tælle frem
til) for at få indsend væk også?

>En anden mulighed at lave en alm for løkke med en tæller, hvor du ikke
>sætter kommaet i det sidste gennemløb
naaah - meningen er at sætningen kan bruges på alle forms, sålænge man
sender det rigtige querystring-parametre med...

Martin_P


Peter Lykkegaard (13-08-2002)
Kommentar
Fra : Peter Lykkegaard


Dato : 13-08-02 21:50


"Martin_P" <mp@XXXalkaline-batteries.dk> wrote in message
news:jihhlu01mknena3cc8pj5lafp6cl75u23n@4ax.com...
> On Tue, 13 Aug 2002 10:27:55 +0200, "Peter Lykkegaard"
> <polonline@hotmail.com> wrote:
>
> >En anden mulighed at lave en alm for løkke med en tæller, hvor du ikke
> >sætter kommaet i det sidste gennemløb

> naaah - meningen er at sætningen kan bruges på alle forms, sålænge man
> sender det rigtige querystring-parametre med...
>
Du har en Count property du kan bruge ved gennemløbet - svjv

mvh/Peter Lykkegaard



Martin_P (14-08-2002)
Kommentar
Fra : Martin_P


Dato : 14-08-02 07:37


>>
>Du har en Count property du kan bruge ved gennemløbet - svjv
>
>mvh/Peter Lykkegaard
>
Jeg fik det til at virke med din left sætning - mange tak!!!

MArtin_P

Søg
Reklame
Statistik
Spørgsmål : 177503
Tips : 31968
Nyheder : 719565
Indlæg : 6408541
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste