Avatar billede teleskop Nybegynder
11. april 2008 - 11:14 Der er 7 kommentarer og
1 løsning

select på datatable

Hello

Jeg har en datatable med collumns UserName og UserID. Derudover har datatabellen 50-100 rækker.

Jeg vil kører et SELECT statement på min datatable med følgende kode:
Dim strSelect As String = "UserName like '%" & q & "%'"
Dim myRows As DataRow() = dtUsers.[Select](strSelect)

Jeg forstår ikke helt hvorfor SELECT statementet kun returnere en datarow().

Så hvordan får jeg fyldt en ny datatable med resultatet af selecten?

Håber det giver mening :)
Avatar billede ivan_flaendsdal Nybegynder
11. april 2008 - 14:53 #1
prøv med dim MyRows() as DataRow
Avatar billede teleskop Nybegynder
11. april 2008 - 15:35 #2
nope desværre er det ikke lovligt.
Avatar billede ivan_flaendsdal Nybegynder
12. april 2008 - 11:20 #3
Hvad type er dtUsers er?

men prøv at bruge

Dim data As DataView
SqlDataSource1.SelectCommand("SELECT * FROM tabel WHERE UserName like '%" & q & "%')
data = SqlDataSource1.Select(System.Web.UI.DataSourceSelectArguments.Empty)

Dette kraver bare at dtUsers er af type SqlDataSource

IVan
Avatar billede ivan_flaendsdal Nybegynder
12. april 2008 - 11:26 #4
eller AccessDataSource :-)
Avatar billede teleskop Nybegynder
13. april 2008 - 22:30 #5
dtUsers er en datatable med UserID og UserName, som jeg også skriver :)

Det er en søgning jeg er ved at lave. Jeg bruger autocomplete kontrollen fra ajax toolkit, hvilket betyder at hver gang brugeren trykker på et bogstav bliver en webservice triggeret som laver søgningen.

Jeg vil fylde en datatable en gang, og derefter lave en LIKE søgning i min datatabel. Derved skal jeg ikke ned i databasen hver gang.
Avatar billede ivan_flaendsdal Nybegynder
14. april 2008 - 16:55 #6
Private Sub GetRows()
    ' Get the DataTable of a DataSet.
    Dim table As DataTable = DataSet1.Tables("Suppliers")
    Dim rows() As DataRow = table.Select()

    Dim i As Integer
    ' Print the value one column of each DataRow.
    For i = 0 to rows.GetUpperBound(0)
      Console.WriteLine(rows(i)("CompanyName"))
    Next i
End Sub

Dette er fra MSDN om DataTable.Select() link http://msdn2.microsoft.com/da-dk/library/h71xaeh0(en-us).aspx

Så jeg kan ikke forstå du sige at Dim MyRows() as DataRow ikke er lovlig?
...

på dette link http://msdn2.microsoft.com/da-dk/library/det4aw50(en-us).aspx

Vises brug af DataTable.Select(String)
Avatar billede teleskop Nybegynder
16. april 2008 - 09:58 #7
Jep, smid et svar :)
Avatar billede ivan_flaendsdal Nybegynder
16. april 2008 - 13:51 #8
Svar :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester