webForumDet fria alternativet

DataAdapter och Where

5 svar · 408 visningar · startad av laidback

laidbackMedlem sedan maj 2001797 inlägg
#1

Med risk för att verkar hur korkad som helst :r
Är hyfsat nybörjare på asp.net och försöker använda DataSets utan större framgång.

Vill stoppa in en request.querystring("id") i sql-satsen men får

objDA = New SqlDataAdapter("SELECT * FROM m_messages WHERE messageID="Request.Querystring("id"), objConn)
	objDA.Fill(objDS, "m_messages")

Compiler Error Message: BC30311: Value of type 'String' cannot be converted to 'System.Data.SqlClient.SqlCommand'.

Det funkar ju om jag skippar hela where-delen, men HUR specificerar jag vilken post i tabellen det är jag vill visa?! Jag vill ju inte skriva ut alla 15000 poster liksom. Totalt förvirrande :q

För att virra till det ytterligare: Sedan är tanken att ordna paging på det hela. Alltså att kunna gå till nästa/föregående post MEN bara där posterna har ett visst userID. (Dvs kunna hoppa mellan en viss skribents poster.)

Har ingen aning om hur det ska gå till? Kan någon förbarma sig lite?

andreas_lindhMedlem sedan jan. 20011 140 inlägg
#2

sql-frågan ska se ut så här

objDA = New SqlDataAdapter("SELECT * FROM m_messages WHERE messageID=" & Request.Querystring("id") &", objConn)
	objDA.Fill(objDS, "m_messages")
laidbackMedlem sedan maj 2001797 inlägg
#3

Hm, "Compiler Error Message: BC30648: String constants must end with a double quote." får jag på den frågan?

DinoMedlem sedan sep. 20011 914 inlägg
#4
Dim sql as string = string.Format("SELECT * FROM m_messages WHERE messageID = {0}", Request.Querystring("id"))
objDA = New SqlDataAdapter(sql, objConn)
objDA.Fill(objDS, "m_messages")

red// ändrade till vb.net

andreas_lindhMedlem sedan jan. 20011 140 inlägg
#5

prova utan &" efter querystringen, är inte säker på att det fungerar

objDA = New SqlDataAdapter("SELECT * FROM m_messages WHERE messageID=" & Request.Querystring("id") &", objConn)
	objDA.Fill(objDS, "m_messages")

Annars ska det nog vara en " innan ,

objDA = New SqlDataAdapter("SELECT * FROM m_messages WHERE messageID=" & Request.Querystring("id") &"", objConn)
	objDA.Fill(objDS, "m_messages")
laidbackMedlem sedan maj 2001797 inlägg
#6

Dino: Njet, får samma fel som när jag provade nåt liknande innan, klagar över att Value of type String... blabla... Men tack iaf :)

Andreas_lindh: Tack! Nu funkar det :)

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