473,804 Members | 2,134 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

DataReader

Hi!

I am trying to create a DataReader in .Net 2003, retrieving data from an
Access backend db. In the code below, when I put a breakpoint within
the While...Read() loop, the datareader returns five records (which is
correct). However, when I simply run the program without the
breakpoint, only one record is being returned. Is there something I'm
missing???? The connection state is "Open", so I'm not sure why all
records aren't being returned.

Dim intUpdateEMGsCo unt As Integer = 0
Dim cnnUpdateEMGs As OleDbConnection = New
OleDbConnection (IMUX_Globals.c onnBE.Connectio nString)
Dim cmdUpdateEMGs As OleDbCommand = New OleDbCommand("S ELECT " & _
"lngEMGId, " &
_

"IIf(IsNull ([CountETB]),0, [CountETB]) AS TotalETB, " & _

"IIf(IsNull ([CountEMRPS]),0, [CountEMRPS]) AS TotalEMRPS, " & _

"IIf(IsNull ([CountRTT]),0, [CountRTT]) AS TotalRTT, " & _

"IIf(IsNull ([CountDCH]),0, [CountDCH]) AS TotalDCH " & _
"FROM " & _
"(((tblOrig _EMG
LEFT JOIN qgrpCountETB ON tblOrig_EMG.str EMG = qgrpCountETB.st rEMG) LEFT
JOIN qgrpCountDCH ON tblOrig_EMG.str EMG = qgrpCountDCH.st rEMG) LEFT JOIN
qgrpCountEMRPS ON tblOrig_EMG.str EMG = qgrpCountEMRPS. strEMG) LEFT JOIN
qgrpCountRTT ON tblOrig_EMG.str EMG = qgrpCountRTT.st rEMG", _
cnnUpdateEMGs)

cnnUpdateEMGs.O pen()
odrUpdateEMGs =
cmdUpdateEMGs.E xecuteReader(Co mmandBehavior.C loseConnection)
Console.WriteLi ne("State: " & cnnUpdateEMGs.S tate.ToString)
If odrUpdateEMGs.H asRows Then
While odrUpdateEMGs.R ead()
intNumRecs += 1
End While
End If
odrUpdateEMGs.C lose()
Console.WriteLi ne("Num Records: " & intNumRecs.ToSt ring)

TIA,

DaveS

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!
Nov 20 '05 #1
2 1590
Cor
Hi Dave,

Just a thougth, I was looking to that long SQL script you are using and that
needs knowledge of your database. (Besides that I think nobody here is
intrested to evaluate it, that is more for the ado.net newsgroup).

Maybe you can test your code with a simple Select of one item in one table.

I asume it is not the "Select" that is not working but the logic.

When it does work with that simple select, it is your "Select".

I hope this helps a little bit?

Cor
I am trying to create a DataReader in .Net 2003, retrieving data from an
Access backend db. In the code below, when I put a breakpoint within
the While...Read() loop, the datareader returns five records (which is
correct). However, when I simply run the program without the
breakpoint, only one record is being returned. Is there something I'm
missing???? The connection state is "Open", so I'm not sure why all
records aren't being returned.

Dim intUpdateEMGsCo unt As Integer = 0
Dim cnnUpdateEMGs As OleDbConnection = New
OleDbConnection (IMUX_Globals.c onnBE.Connectio nString)
Dim cmdUpdateEMGs As OleDbCommand = New OleDbCommand("S ELECT " & _
"lngEMGId, " &
_

"IIf(IsNull ([CountETB]),0, [CountETB]) AS TotalETB, " & _

"IIf(IsNull ([CountEMRPS]),0, [CountEMRPS]) AS TotalEMRPS, " & _

"IIf(IsNull ([CountRTT]),0, [CountRTT]) AS TotalRTT, " & _

"IIf(IsNull ([CountDCH]),0, [CountDCH]) AS TotalDCH " & _
"FROM " & _
"(((tblOrig _EMG
LEFT JOIN qgrpCountETB ON tblOrig_EMG.str EMG = qgrpCountETB.st rEMG) LEFT
JOIN qgrpCountDCH ON tblOrig_EMG.str EMG = qgrpCountDCH.st rEMG) LEFT JOIN
qgrpCountEMRPS ON tblOrig_EMG.str EMG = qgrpCountEMRPS. strEMG) LEFT JOIN
qgrpCountRTT ON tblOrig_EMG.str EMG = qgrpCountRTT.st rEMG", _
cnnUpdateEMGs)

cnnUpdateEMGs.O pen()
odrUpdateEMGs =
cmdUpdateEMGs.E xecuteReader(Co mmandBehavior.C loseConnection)
Console.WriteLi ne("State: " & cnnUpdateEMGs.S tate.ToString)
If odrUpdateEMGs.H asRows Then
While odrUpdateEMGs.R ead()
intNumRecs += 1
End While
End If
odrUpdateEMGs.C lose()
Console.WriteLi ne("Num Records: " & intNumRecs.ToSt ring)

Nov 20 '05 #2
Cor,

Thanks for your comments.

Just before creating the DataReader (whose Command is based on
tblOrig_EMG), I populated tblOrig_EMG with an INSERT query. My guess is
that this query hadn't completed by the time the DataReader was being
created -- when I moved the code for this DataReader to a different
spot, it worked just fine. Go figure...

TIA,

DaveS

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!
Nov 20 '05 #3

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

6
363
by: Yasutaka Ito | last post by:
Hi, My friend had a little confusion about the working of DataReader after reading an article from MSDN. Following is a message from him... <!-- Message starts --> I was going thru DataReader in ADO.NET in MSDN and there is a confusion regarding the buffering of data in case of DATAREADER. The link for MSDN JAN 2004 is -
6
750
by: Ravi | last post by:
Hi, I am not able to understand why a datareader needs a connection to the DB all the time. Here is what I tried. Sqlcommand cmd = ("select * from table1",con) // where con is the connection object 1. DataReader dr = cmd.executereader(); 2.while(dr.read()) { // do something //} I have a break point in line 2. when i run my application and once it hits the break point (i.e line 2) I opened query analyzer and deleted all the rows in...
5
5765
by: Jason Huang | last post by:
Hi, Is it possible to bind DataReader to a DataGrid in C# windows form? And how? And can we update data in a DataSet by using the DataReader? Thanks for help. Jason
12
467
by: Thomas Scheiderich | last post by:
I have 2 dropdowns that are exactly the same and I don't want to re-read for each. Is there a way to do something like below where I read the data, bind to depCity1 and then bind to destCity2. I find that the second one always is blank. I assume this is because the DataReader is read-forward only. ******************************************************** connect.open() cmdSelect = New OleDbCommand("exec populateCities 'North...
20
5539
by: Mark | last post by:
Hi all, quick question , a DataView is memory resident "view" of data in a data table therefore once populated you can close the connection to the database. Garbage collection can then be used to "clean up" the DataView once it is not referenced and will not effect the number of connections to the database. A DataReader on the other hand always maintains a connection to the database and must be explicitly closed (Do not rely on garbage...
2
1579
by: Andrei Pociu | last post by:
In a typical ASP .NET Web Application (website), I'm currently using a class where I declare some public static objects. For example there's the place where I initialize the SqlConnection. Also there's the place where I declare one public static DataReader, but I'm not sure this is the best way to do it. I use that DataReader in all the webforms and user controls, whenever I have to read data from the db. So, should I do it this way or...
1
3093
by: Brent | last post by:
I'm having a hard time wrapping my head around how to build a multi-dimensional array of n length out of a DataReader loop. Take this pseudo-code: ======================================= public string get_array(string sql) { //create db connection & open
7
3400
by: Varangian | last post by:
Hi all, the question I want to ask if the conversion of a DataReader to a Table looping through the DataReader is better than using the Fill Method of the DataAdapter... I'm asking because internally the DataAdapter uses the DataReader... so whats the deal of writing a method that converts a DataReader into a DataTable ? Thanks!
7
2913
by: Diffident | last post by:
Hello All, I would like to use DataReader based accessing in my Data Access Layer (DAL). What is considered to be a best practice while returning from a DAL method that executes a query and returns N rows. DataReader object? Collection object? DataTable object? Returning a DataReader object is not a good practice...right? Thnks for all your suggestions!!
3
3386
by: Johnny Jörgensen | last post by:
I've got an error that I simply cannot locate: I've got a form in which I use a datareader object to read information from a db. After the read, I close the reader and I dispose of both the reader and the command object (but don't close the connection which is public in the solution). The first time i open my form from a parent form, there is no problem. Everything works fine. I then close down my form, and I dispose of the form.
0
9715
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
10603
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
10353
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
10356
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
10099
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
1
7643
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
5675
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
4314
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
3836
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.