DataSource Controls :: SQL Only Returns All The Rows Some Of The Time
Jan 15, 2010
Iam confronted with a really weird issue the like of which ive never seen before. I recently developed a web application using ASP.net and launched it for my company, during the bug testing stages everything seemed fine, but once it was actually in production i started getting these weird errors that all stem from it not retrieving the correct rows.
The issue is this, sometimes the queries sent to the back end only return a partial amount of the rows actualyl requested, so if a user has a page loaded thats suppose to return X number of rows, they can sometimes get X - Y number of rows, and upon refreshing the page they get X - Z number of rows, and refreshing the same exact page again they might get X number of rows they were initially suppose to see. I've never seen anything like this before so Iam stumped.
I consulted some of the old developers in the company I used to work for, for assistance but when explaining and showing the problem they too were very confused with the issue.
I have one big DataTable with X rows. I want to select Y rows from it and bind them to a new ViewList. While doing it, I want to delete these rows from the DataTable (Having X - Y rows).
What is the best and fast way to do it?
I don't know if it is better to create a new DataTable to have the Y and after that bind them to a ViewList or something else?
I'm also looking for example in code how to select/delete rows from DataTable.
I have a DataTable for which a PrimaryKey constraint has been set to be a combination of an integer column and a datetime column. When I try to 'Find' a row by saying,
dtFunds.Rows.Find(iContainerIndex)
I get a null value. iContainerIndex has been defined as an object array of size 2 with the integer ID and date values in it.
When I set a breakpoint in my code, I see that the very same values are present in the datatable.
If I try to execute, DataTable.Select() method with the integer column filter, I get a result - but returns no result when called with the date column filter.
What am I doing wrong here? The very same DateTime value is present in the datatable.
I am trying to use a SqlDataAdapter to fill a DataTable, which I use as a data source to a DataGrid. The query is fine, at least when I run it manually in SSMSE. When I do the fill operation, the table gets the right columns, but no rows. The most frustrating part of this is that the code is identical (with a different query) on a different page. I cannot post the query, but my initialization code looks like this:
SqlCommand areaDAC = new SqlCommand (areaQuery, connection); areaDAC.Parameters.Add (new SqlParameter ("@param", System.Data.SqlDbType.NVarChar, 50)); m_areaDataAdapter = new SqlDataAdapter (areaDAC);
At this point, table has the right number of columns and no rows. I know the parameters are being added correctly, I know that data exists for the given query.
I have a gridview that has the header row modified in order to add new records; the gridview is bound to a sqldatasource control. In my code behind, i handle the insert in the following manner:
[Code]....
I know the insert is occuring because the new record shows up in the grid after the databind, but the output parameter is not picking up the scope_identity() value...what am i doing wrong with the output parameter?
I don't understand how the stored procedure is returning false. It's supposed to continue looping and continue writing rows. Right now it writes the very first row, and then it goes into the If Not AdvanceLinkBanned.Add(banrec) Then and it goes in here, prints the message and exits the sub. Why is it thinking the add returns false? If Not AdvanceLinkBanned.Add(banrec) ? Doesn't this return the id of the new record? Isn't this not zero? Zero would make it false. How can this be false? Isn't it supposed to return the next record created ? Doesn't SELECT SCOPE_IDENTITY() return the value of the record id? How do I test this?
What I'm trying to achieve is to track any change made on a form. I thought DataSet.HasChanges and DataSet.GetChanges would be a good way to accomplish this. However, in the code below DataSet.HasChanges always returns false.
EmployeeDs represents a strongly typed DataSet.how to get changes from the updated row into the new dataSet?
what i want is to get the row which comes next to the row of the first data table in the second data table.
the first data table his name is :: temp
the second data table his name is :: dt
i do the following:
DataTable temp = new DataTable(); temp = dt.Clone(); DataColumn[] keyColumn = new DataColumn[1]; keyColumn[0] = temp.Columns["photoId"]; temp.PrimaryKey = keyColumn; temp = (DataTable)(Session["currentImage"]); DataRow[] drr = new DataRow[1]; index = dt.Rows.IndexOf(temp.Rows[0]);
but the index always comes with one value = -1
although the temp.rows[0] its contents changed all the time
when i write dt.Rows.IndexOf(dt.Rows[1]) for examble i get 1
but this is not what i want to do ,, what i want to do exactly is to get the datarow next to the datarow of the first dataTable in the second dataTable
I am actually using 2 type of queries in my website e.g
These Queries are from my stored procedures
SELECT * FROM TblName WHERE FREETEXT(ColumnName, @parameter)
AND
SELECT * FROM TblName WHERE CONTAINS((Column1, Column2), @parameter))
I have enabled Full Text Indexing on my tables both local and on my hosting company MS SQL Server.
The above queries are working fine on my local database and return results but these queries return nothing when i try to run them on hosting company MS SQL Server.
I have identical data on both MS SQL Servers and both servers are 2008.
I added a new table to my type dataset. When the code tries to execute the new row on that table I get the error message.
(if you can't see the error. "MissingMethodException was caught" "Method not found: 'MyTableDataTable MyNamespace.get_SSCase().")
I've tried the wizard and also click and drag the table from solution explorer to the xsd file. The other tables work, just this one table won't work. What should I check?
I was wondering if anyone knows of a good login stored procedure that can be freely used and features login limits and so on (basically a good one) With my limited SP knowledge, I've tried to create one myself, I haven't completed it yet as I'm not sure on how to compare the last login attempt time against the current time (it's in the comments).
I've got data in a xml document.The xml document is generated by a stored procedure.I like to change the stored procedure so i can skip a lot of rows.The count of rows, i like to add as a Parameter.With a top of 20 i get 20 rows.But after i show the 20 rows there is some kind of paging on de website so the user can put next, and get the next 20 rows.But how can i skip in that case the first 20 rows?, and after that 20 rows, i want the next 20 rows....So i like to add it as a parameter.
But how?With linq its quite easy, but i don't want ms sql resultss the complete rows to the xml file, becasue it would be lots of them (100.000...)
I created a PageLoad event, so when the page opens it fills all the fields from a DataSource control. However, the problem is that if the DataSource control is empty (the row does not exist yet) it gives me an error. How do I check that if DataSource Control has a row of data or not?
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.