?
Solved

Do Until, For Each, EOF - SQL in ASP.NET (VB)

Posted on 2009-05-12
11
Medium Priority
?
702 Views
Last Modified: 2013-11-26
I want to query an SQL table for all instances of a particular field. (i.e. SELECT COUNT(*) FROM myTable where ID = '187')

Then I want to cycle through each record and do something based on the data. (For Each, EOF/BOF, etc.)

What is the best way to go about doing this in ASP.NET(VB)?
0
Comment
Question by:Mike Miller
  • 5
  • 4
  • 2
11 Comments
 
LVL 5

Accepted Solution

by:
Aanvik earned 1000 total points
ID: 24366893

    Dim strSQL As String = "SELECT * FROM myTable where ID = '187'"
    Dim Connection As New OleDbConnection("PROVIDER=....")
    Dim DA As New OleDbDataAdapter(strSQL, Connection)
    Dim DS As New DataSet
 
    DA.Fill(DS, "Codes")
 
    Dim dt As New DataTable = DS.Tables(0)
    Dim dr As DataRow
    For Each dr In dt.Rows()
       'Do whatever you want to do with each record.
    Next

Open in new window

0
 

Author Comment

by:Mike Miller
ID: 24367018
Ok that looks good. So how would i reference what is in the columns?

Like

Label1.text = ??????? for whatever is in the 3rd column
0
 
LVL 7

Expert Comment

by:urir10
ID: 24367069
Label1.text = dt(0)   for the first column
or Label1.text = dt("name of column")
0
NEW Veeam Agent for Microsoft Windows

Backup and recover physical and cloud-based servers and workstations, as well as endpoint devices that belong to remote users. Avoid downtime and data loss quickly and easily for Windows-based physical or public cloud-based workloads!

 

Author Comment

by:Mike Miller
ID: 24367334
I'm getting "End of statement expected" on:
Dim dt As New DataTable = DS.Tables(0)

and

Name dt is not declared on:
 For Each dr In dt.Rows()
        Dim strSQLlsd As String = "SELECT * FROM tblMultiTours where ID like '" & Label1.Text & "'"
        Dim Connection As New Data.OleDb.OleDbConnection("Data Source=ussrm-netsql\netdata;" & _
      "Initial Catalog=Employee;" & _
      "Integrated Security=SSPI")
        Dim DA As New Data.OleDb.OleDbDataAdapter(strSQLlsd, Connection)
        Dim DS As New Data.DataSet
        DA.Fill(DS, "Codes")
        Dim dt As New DataTable = DS.Tables(0)
        Dim dr As Data.DataRow
        For Each dr In dt.Rows()
            
        Next

Open in new window

0
 
LVL 5

Expert Comment

by:Aanvik
ID: 24367360
Change DA.Fill(DS, "Codes") to  DA.Fill(DS)
0
 
LVL 7

Expert Comment

by:urir10
ID: 24367381
Sorry i meant dr not dt
0
 

Author Comment

by:Mike Miller
ID: 24367505
DA.Fill(DS)

gives me the same 2 errors
0
 
LVL 7

Expert Comment

by:urir10
ID: 24367604
Do you have the right Namespaces included?

Imports System.Data
Imports System.Data.OleDb
0
 

Author Comment

by:Mike Miller
ID: 24367638
Yes
0
 
LVL 7

Assisted Solution

by:urir10
urir10 earned 1000 total points
ID: 24367923
try this instead:
            Dim dt As New DataTable
            dt = DS.Tables(0)
0
 

Author Comment

by:Mike Miller
ID: 24367941
Ok yeah that worked. I had it as data.datatable without the namespace and tried that before. Once i added the namespace and just did datatable it worked, thanks guys
0

Featured Post

Granular recovery for Microsoft Exchange

With Veeam Explorer for Microsoft Exchange you can choose the Exchange Servers and restore points you’re interested in, and Veeam Explorer will present the contents of those mailbox stores for browsing, searching and exporting.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article shows how to deploy dynamic backgrounds to computers depending on the aspect ratio of display
Hello there! As a developer I have modified and refactored the unit tests which was written by fellow developers in the past. On the course, I have gone through various misconceptions and technical challenges when it comes to implementation. I would…
Integration Management Part 2
Screencast - Getting to Know the Pipeline
Suggested Courses
Course of the Month15 days, 1 hour left to enroll

839 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question