webForumDet fria alternativet

Lägga till flera poster samtidigt

ASP

6 svar · 209 visningar · startad av andreas_lindh

Medlem sedan jan. 20011 140 inlägg
Frågan#1

Jag använder den här koden för att lägga till flera poster samtidigt.

lag=split(Request.Form("lag"),",")
grupp=split(Request.Form("grupp"),",")
cup_id=split(Request.Form("cup_id"),",")
trojfarg=split(Request.Form("farg"),",")

Set rs = Server.CreateObject("ADODB.Recordset")

SQL = "SELECT * From c_deltagare" 
rs.Open SQL, oConn, 1, 2
for i = 0 to ubound(cup_id)
rs.AddNew

rs("cup_id")=cup_id(i)
rs("lag")=lag(i)
rs("grupp")=grupp(i)
rs("trojfarg")=trojfarg(i)

rs.Update

next
rs.Close

Allt fungerar förutom att det blir ett mellanslag innan det man skrivit på alla poster utom den första. Någon som vet hur jag kan få bort detta mellanslag.

Medlem sedan dec. 19998 577 inlägg
#2

Förstod inte riktigt vart du fick mellanslag, men du använder funktionen 'trim' för att ta bort inledande och avslutande mellanslag i en sträng, dett gör du innan du lägger till i databasen.

------------------
Mostly Harmless

Medlem sedan jan. 20011 140 inlägg
#3

Det blir fortfarande fel även fast jag använder trim.

Första posten blir rätt men det blir fel på resten.

Det blir så här:
namn blir <mellanslag>namn

Medlem sedan jan. 20011 140 inlägg
#4

Nu fungerar det. Tack.

Medlem sedan okt. 20005 273 inlägg
#5

Visa gärna hur du gjorde ;)

mvh icaaq

------------------
-::| a tribute to LarsG |::-

Medlem sedan jan. 20011 140 inlägg
#6
lag=split(Request.Form("lag"),",")
grupp=split(Request.Form("grupp"),",")
cup_id=split(Request.Form("cup_id"),",")
trojfarg=split(Request.Form("farg"),",")
Set rs = Server.CreateObject("ADODB.Recordset")

SQL = "SELECT * From c_deltagare" 
rs.Open SQL, oConn, 1, 2
for i = 0 to ubound(cup_id)
rs.AddNew

rs("cup_id")=cup_id(i)
rs("lag")=trim(lag(i))
rs("grupp")=trim(grupp(i))
rs("trojfarg")=trim(trojfarg(i))

rs.Update

next
rs.Close

Vet inte om det finns någon bättre lösning men det fungerar som det ska

Medlem sedan feb. 20012 412 inlägg
#7

En bättre lösning:

sql ="INSERT INTO ogrish (field1, field2, field3) " & _
" VALUES('"& value1 &"', '"& value2 &"', '"& value3 &"')"
Connect.Execute sql,,128

Red: fast å andra sidan ska du ju endå skapa ett recset. Men jag hade någ valt ovanstående istället för AddNew.

mvh Jörgen :)

------------------
.: Det är jag som ger svaren och det är Ni som ställer frågorna :.

[Redigerat av jorgen den 27 jan 2002]

262 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
136 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)