webForumDet fria alternativet

Lägga in alla värden från en array i databas.

Databaser & SQLur Databashanterare & SQL

2 svar · 310 visningar · startad av ConnyFox

ConnyFoxMedlem sedan aug. 20011 087 inlägg
#1

har en select multiple i mitt formulär och får därmed en array med flera värden i som jag vill lägga in i en databas (separata poster, inte i samma fält), hur gör jag detta utan att göra en loop i asp. borde väll gå att göra direkt i mysql frågan istället för så jag gjort här nedanför.

for each user in request.form("users")

Set cmd = server.createobject("adodb.command")
cmd.activeConnection = connect
MySQL = "Insert Into party_users (userID) Values(?)"
cmd.CommandText = MySQL
SET rs = cmd.Execute (, array(user))
set cmd = nothing

next
LarsGMedlem sedan dec. 200012 464 inlägg
#2

Du kan antingen bygga ett insertstatement där du anger flera värden

insert into party_users(userID) values(1),(2),(3)

eller så kan du skicka in en array av arrayer till execute. Det kanske finns någon bra metod för att göra om en collection till en array?

ConnyFoxMedlem sedan aug. 20011 087 inlägg
#3

Vet aldrig hur många värden jag vill lägga in så i ditt exempel får jag ju loopa för att bygga upp själva sql frågan istället.. iaf om jag förstått det rätt :)

hade bara för mig att det gick att lösa direkt i sql frågan men jag minns kanske fel då :)

127 ms totalt · 3 externa anrop · v20260731065814-full.29ac60f6
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)