Piotr S.

Piotr S. Senior Tester

Temat: problem z sqldatasource

witam, mam dwie tabele : tabela1 i tabela2. Jeżeli chce wyświetlić powiedzmy w datalist1 określone dane z tabeli1 to dodaje dla datalist1 kontrolkę sqldatasource1 z zapytaniem SELECT * FROM tabela1 WHERE wartosc=2 (wartosc jest jakąś hipotetyczna kolumna z tabeli), powiedzmy ze w wyniku tego zapytania uzyskuje pojedynczy rekord z tabeli1 o idtabela1=3. tabela2 również zawiera kolumne idtabela1. Jak teraz skonfigurować sqldatasource2 dla datalis2 tak żeby w datalist2 wyświetlić rekordy z tabeli2 dla których idtabela1 jest takie samo jak idtabela1 uzyskane z zapytania dla datalist1, czyli w podanym przeze mnie przykłdzie chciałbym, żeby w datalist2 wyświetlone zostały wszystkie rekordy których pole idtabela1 jest równe 3.
Dominik Mikiewicz

Dominik Mikiewicz maps made easy,
www.cartomatic.pl ||
cartoninjas.net

Temat: problem z sqldatasource

Nie jestem specjalistą od asp.net, ale o ile dobrze zrozumiałem o co ci chodzi, to coś w tym stylu powinno być ok... kod vb nietestowany:

Dim value As String

'zakładając, że pierwsze zapytanie zwraca tylko jeden rekord
Dim row As Data.DataRow = Table.Rows(0) 'table - tabela, która została zwrócona przez pierwsze zapytanie
value = row("idtabela1")

Dim objComm2 As SqlCommand
objComm2.Connection = objConn 'objConn - Twoje połączenie z db
objComm2.CommandText = "SELECT * FROM tabela 2 WHERE tabela2.idtabela1 = @Value"

objComm2.Parameters.Add("@Value", Data.SqlDbType.NVarChar)
objComm2.Parameters("@Value").Value = value 'Tutaj pewnie warto sprawdzić, czy przekazywana wartość ma właściwy typ

Dim objReader As SqlDataReader
objReader = objComm2.ExecuteReader 'albo użyj dataadapter, żeby dostać całą tabelę

a i zapomniałem o datalist2...

datalist2.DataSource = objReader
datalist2.DataBind()[edited]Dominik Mikiewicz edytował(a) ten post dnia 09.07.08 o godzinie 16:10

Następna dyskusja:

problem z target="_parent"




Wyślij zaproszenie do