DataSource Controls :: Loop Through Reader Using VB?
Jan 7, 2010how I can loop through the results in VB, I only ever seem to get the last row, I would like to list all rows.
My code is below
[Code]....
how I can loop through the results in VB, I only ever seem to get the last row, I would like to list all rows.
My code is below
[Code]....
I'm currently trying to build a html table from the results of a sql data reader. As my table has multiple records, I want the code to loop through the reader and output the details on individual lines of the page. In ASP I have done this in the past using something like
[Code]....
but as I am using data readers I'm not sure what the equivalent is.
I am trying to send session on Loop and trying get .
[code]....
In above code, I just only get same SessionId on every news headings, how do I get next row session id?
I have following code that I can only add one image per row although I can add Listbox items as I wanted.
If "imgtag" 1~5 is checked, I get these in the listbox.
ie. ImageID = "cat"
listbox1. item gets - cat1, cat2, cat3, cat4, cat5
however I can only create the last image instead of 5 images.
- imageID - cat5
I assign each image unique ID.
If reader2.HasRows Then
While reader2.Read
Dim img1 = Convert.ToString(reader2("imgtag1"))
Dim img2 = Convert.ToString(reader2("imgtag2"))
Dim img3 = Convert.ToString(reader2("imgtag3"))
Dim img4 = Convert.ToString(reader2("imgtag4"))
Dim img5 = Convert.ToString(reader2("imgtag5"))
Dim blogimg = Convert.ToString(reader2("ImageID"))
Dim a As New HyperLink
a.Attributes.Add("onclick", "return hs.expand(this)")
a.Attributes.Add("href", "../../blog/images/" + blogimg)
Dim img As Image = New Image
img.ImageUrl = "~/blog/images/" + blogimg
img.Width = 200
If img1 = "1" Then
Dim blogimg1 As HtmlTableCell = CType(FindControl("blogimg1"), HtmlTableCell)
img.ID = blogimg + "1"
a.Controls.Add(img)
blogimg1.Controls.Add(a)
ListBox1.Items.Add(blogimg + "1")
End If
If img2 = "1" Then
Dim blogimg2 As HtmlTableCell = CType(FindControl("blogimg2"), HtmlTableCell)
img.ID = blogimg + "2"
a.Controls.Add(img)
blogimg2.Controls.Add(a)
ListBox1.Items.Add(blogimg + "2")
End If
If img3 = "1" Then
Dim blogimg3 As HtmlTableCell = CType(FindControl("blogimg3"), HtmlTableCell)
img.ID = blogimg + "3"
a.Controls.Add(img)
blogimg3.Controls.Add(a)
ListBox1.Items.Add(blogimg + "3")
End If
If img4 = "1" Then
Dim blogimg4 As HtmlTableCell = CType(FindControl("blogimg4"), HtmlTableCell)
img.ID = blogimg + "4"
a.Controls.Add(img)
blogimg4.Controls.Add(a)
ListBox1.Items.Add(blogimg + "4")
End If
If img5 = "1" Then
Dim blogimg5 As HtmlTableCell = CType(FindControl("blogimg5"), HtmlTableCell)
img.ID = blogimg + "5"
a.Controls.Add(img)
blogimg5.Controls.Add(a)
ListBox1.Items.Add(blogimg + "5")
End If
End While
I'm quite new to ASP.NET and i was wondering if someone could answer some of my questions.1. What is the difference between a DataTable and an Array? Is the DataTable a serverside control? Is it exposed to the user?2. Does the reader retrieve the column names? If so- how can I capture them? Are they the first row?2. Is it possible to populate an Array using the following sort of code, and if so- how?:
SqlCommand tableCommand = new SqlCommand();
SqlConnection tableConnection = new SqlConnection();
tableCommand.Connection = tableConnection;
[code]...
Here is what I have tried:
txtCost.Text = string.Format("{o:c}", dr["Cost"]);
Here is the error I receive. How can I format the data that is coming from the data reader into currency format??? Also, is there a way to format it into currency without the dollar sign?
Input string was not in a correct format. Description: An unhandled exception occurred during the execution of the current web request. review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.FormatException: Input string was not in a correct format.
[Code]....
but if table is empty i.e. there is no record for Store_no=storeno then it bill_id = (Convert.ToInt32(reader[0]) + 1); give a Null exception.
I want to set bill_id=1 if there is no previous record in table of that particular store number. then How to do this.
i.e. How to check that reader[0] is null
cmd1 = new SqlCommand(" Select Max(Bill_No) From Bill_Record Where Store_no='" + storeno + "'", hookUp);
I'm getting "This SqlTransaction has completed; it is no longer usable" exception when try to commit my transaction after sqlreader is close.Here is the code sample
[Code]....
...so when I get to commit the transaction it raises the mentioned exception: "This SqlTransaction has completed; it is no longer usable". I have also noticet that Command.Transaction becomes NULL after reader.Close()My question is: Can I use SqlDataReader and SqlTransaction ? Maybe to use BeginExecuteReader and EndExecuteReader ?
I have been able to successfully read a row of data from an SQL table using two column parameters. Now I would like to update this row with new information. Is this possible since the reader does not specify which row was read with the 'reader.Read();' command?
View 7 RepliesI have a GV that is populated via a reader: Using reader As SqlDataReader = cmd.ExecuteReader() I have autogenerate edit button=T but it will not go into editmode. Must I create template to handle this?
View 4 RepliesI am trying to pass a mysql reader string variable into a textbox so on the asp front end it will automatically show the resultset as soon as the page is loaded. The following is my code:
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.isPostback)
[code]...
So far i've populated my grid view with my roomID. however using data reader I don't seem to be able to get more than one column to auto generate even though i'm now looking for three values : SELECT tt_roomEquip.roomID, tt_room.roomCapacity, tt_equip.equipTitle is my select bit of the sql, though it's only putting roomID into my grid view.
View 1 RepliesEnvironment is : vwd2008, asp.net 3.5, linq to sql object model, formview, stored procedure used for query.On going problem... I have a simplified page with a webform content area from a master page. The content area contains a FormView connected to an object data source thru the design view tag. The O/R designer has the Lease Table and the stored procedure in the method area.
The stored procedure selects all records from a single table. I an using the DatabaseDataContext and selecting stored procedure name which has "return SingleResult".. There is no code written; the design view was used to create everything. The stored procedure executes in VWD 2008 express tab and shows desired records. I would like to use the O/R and Linq to SQL, and objectdatasource BUT.
I get the following error when I try to update rows in the DebtorList table : Invalid attempt to call FieldCount when reader is closed with LINQ
// Query the database for the row to be updated.//USE DL TEST VERSION...
var queryUpdateWithoutExclusions = (
[Code]....
I have some code in my vb.net code behind that queries a database, and if there is data, outputs it from the codebehind to a datalist on my asp.net page. In addition to sending the data to the datalist on the page, I need to take the value from "mbillaty" that is returned from the sql query, and have that value be the selected value for a drop down box also on the page. I can get either the datalist to fill, or the selected value for the dropdown box to be selected depending upon which bit of code I place before the other (ARGH), but I can't get them to both work together on the page. What am I doing wrong?
[Code]....
im learning t-sql, infact i needed its while-loop to loop through records of a table, i found this code in some book:
[Code]....
i understand here that setting the rowcount variable to 1 will force the select statements to return only one record, do all above select statements return one record only?
if the underlined select statement returns one record everytime it is executed, isn't it supposed to return the same first record of the table everytime? is there a better way to loop through a table's records?
iam working with gridview in asp.net3.5,Sqlserver2008 I am retrieving data from a SP into a datatable.i need to store this table into gridview. but am getting the last row from my datatable into my gridview.
here i need to add each row to the datatable.
my grid is like this:
[Code]....
I would like to loop through my result set and generate a menu structure like this:
pagetitle
pagetitle
subtitle
subtitle
pagetitle
pagetitle
So far I have the following code but it doesn't generate the menu?
While reader.Read()
' set title
sitetitle = reader.Item("siteName")
mydata &= reader.Item("pagetitle")
' check subtitle exists, if so, build menu, loop though subtitles somehow?
if not IsDBNull(reader.Item("subtitle"))
mydata = "<ul>"
mydata &= "<li>" & reader.Item("subtitle") & "</li>"
mydata &= "</ul>"
end if
End while
Qeury and result set below:
sql:
SELECT subpages.subpageid, pages.pageid, sites.sitename, sites.siteid, pages.siteid,pages.pagetitle, subPages.subtitle FROM pages LEFT JOIN sites ON pages.siteid = sites.siteid LEFT JOIN subpages ON subpages.subpageid= pages.pageid WHERE sites.siteID = 1 ORDER BY sites.siteid, pages.pageid, subpages.subpageid ASC
results:
subpageid | pageid | siteid | siteid | pagetitle | subtitle
NULL 1 SCHS 1 1 Sandwell Community Healthcare Services NULL
NULL 2 SCHS 1 1 About Us NULL
NULL 3 SCHS 1 1 Your Services NULL
4 4 SCHS 1 1 Equality and Diversity Team at SCHS 1111
4 4 SCHS 1 1 Equality and Diversity Team at SCHS 2222
4 4 SCHS 1 1 Equality and Diversity Team at SCHS 333
4 4 SCHS 1 1 Equality and Diversity Team at SCHS 44444
NULL 5 SCHS 1 1 Single Equality Scheme NULL
NULL 6 SCHS 1 1 Diversity Strands NULL
NULL 7 SCHS 1 1 Equality Impact Assessments NULL
NULL 8 SCHS 1 1 Quality and Safety Committee NULL
NULL 9 SCHS 1 1 Contact Us NULL
How can I continue to the next row in the foreach loop below.
[code]....
Say for example, I have script like below whereby everything is same except the table name and each table name will append an incremental number, is it possible for me to have a for loop to dynamically add the incremental number?
CREATE TABLE Persons1
(
P_Id int,
[code]...
Is there any option to use loop statement in MS SQL Stored Procedure?
Suppose I have two tables Table-A and Table-B
Table-A
ID
Name
Phone
1
X
12354
2
Y
3689
3
Z
2578
Table-B
ID
Name
Phone
I want to insert all the values of Table-A into Table-B by using Stored Procedure
I am using MS SQL 2005
My original code was in classic vb. and could use redim array to resize them. I was porting the code to c# now and lately i have run into an issue to resize a 2 dimensional array. The thing here is I have a 2 dimensional array whose 2nd dimension needs to be increased dynamically as needed to accommodate the data. For say
String[,] ary1=new String[2,10];
I'm doing some operation in a loop and filling in the data in ary1. And if the loop still continues, on reaching the ary1 upper bound i need to increase the size further to accommodate 10 more rows. I tried couple of ways to copy it to a bigger array and assign it back to the current array. but somehow dint work.
Here is my code, using LinQ to get the data from database.
public IEnumerable categoryData()
{
db = new DBModelDataContext();
var cat = from c in db.Categories
select new { c.categoryname,c.categoryid };
return cat;
}
trying to get the values (categoryname and categoryid) into textfiled and valuefield of dropdown list.
dt = new clsData();
ddlCategory.DataSource = dt.categoryData();
what is the code that i need to write to assign the categoryname to textfield and categoryid to valuefield. I mean how to loop through the values coming from the above function.
ddlCategory.DataBind();
I am using vs2008, Sqlserver2008.
my table: PostGL having data like thi
AutoIdx TxDate Id AccountLink Description Debit Credit
3 2010-01-22 JL 2 bcb 0 35.09
5 2010-01-28 JL 2 g 3.51 0
select AutoIdx,TxDate,Id,AccountLink,Description,Debit,Credit,(Debit-Credit) as Actual from PostGL where Id='JL' and AccountLink=2
AutoIdx TxDate Id AccountLink Description Debit Credit Actual
3 2010-01-22 JL 2 bcb 0 35.09 -35.09
5 2010-01-28 JL 2 g 3.51 0 3.51
I am trying in view like this
declare @cnt int
declare @i int
set @budget=20
set @cnt= (select COUNT(*) from PostGL where AccountLink=2 )
set @i=1
WHILE (@i<=@cnt )
BEGIN
set @tdebit=??
END
I am taking count the no of rows having AccountLink=2
I need to read all debit,credit and add all debit into totaldebit,all credit into totalcredit independently from table.
then i need to show the totaldiff as Actual.
i need ....totaldiff=totaldebit-totalcredit
I have 1000 records in a table .
Now I want to Loop through all them ,extracting value of one particular column in each row (which is then used to find value in other table)
How should I proceed .
I don't want to use WHILE as it slows down my Stored procedure