none
Windows updates has broken ADO.NET (3.5)? RRS feed

  • Question

  • Background:

    OS - Vista x64 Business

    VS 2008 project/solution (windows forms using .NET 3.5)

     

    I ran windows update this morning which installed 12 updates.

     

    http://support.microsoft.com/kb/954366

    http://support.microsoft.com/kb/947738

    http://www.microsoft.com/technet/security/bulletin/ms08-052.mspx

    http://support.microsoft.com/kb/955302

    http://support.microsoft.com/kb/954606

     

    These are updates that see like very possible candidates for causing my problem.

     

    Problem:

    Adapter.Fill(myTable) is no longer returning any records.  My first thought was a data problem as I've not modified this code in several weeks.  So I debug my VS 2008 project and get the Command.Text - copy and paste the SQL SELECT statement into a SQL Managent Studio query window and execute the statement.  To my surprise it returned 2000+ records (this is what I expected), so obviously this is not a data problem.

     

    I've gone thru my code line by line and no exceptions are being generated, but for whatever reason, this specific SQL SELECT does NOT return any records -- it used to return records prior to the above updates.

     

    Code Snippet

    SELECT Customers.LastName, Customers.FirstName, Customers.MiddleName, Customers.Address1, Customers.Address2,  Customers.City, Customers.State, Customers.Zip, Customers.HomePhone, Customers.WorkPhone, Customers.CellPhone,  Customers.Employer, Customers.Account, MAX(CustomerUnits.NetPTD) AS NetPTD, MAX(CustomerUnits.Balance) AS Balance, CustomerUnits.UnitID,  SiteRentalTypeUnits.UnitMask, CustomerUnits.MoveInDate, SiteCustomers.SiteID, CustomerUnits.UnitStatusID, Sites.AlternateExternalID  FROM Customers INNER JOIN  CustomerUnits ON Customers.CustomerID = CustomerUnits.CustomerID INNER JOIN  SiteRentalTypeUnits ON CustomerUnits.UnitID = SiteRentalTypeUnits.UnitID INNER JOIN  SiteCustomers ON Customers.CustomerID = SiteCustomers.CustomerID AND SiteRentalTypeUnits.SiteID = SiteCustomers.SiteID INNER JOIN  Sites ON SiteRentalTypeUnits.SiteID = Sites.SiteID  GROUP BY Customers.LastName, Customers.FirstName, Customers.MiddleName, Customers.Address1, Customers.Address2, Customers.City,  Customers.State, Customers.Zip, Customers.HomePhone, Customers.WorkPhone, Customers.CellPhone, Customers.Employer,  Customers.Account, CustomerUnits.UnitID, SiteRentalTypeUnits.UnitMask, CustomerUnits.MoveInDate, SiteCustomers.SiteID,  CustomerUnits.UnitStatusID, Sites.AlternateExternalID  HAVING (MAX(CustomerUnits.Balance) > 0) AND (MAX(CustomerUnits.NetPTD) < CONVERT(DATETIME, '2008-07-27 00:00:00', 102)) AND (NOT (Sites.AlternateExternalID IS NULL)) ORDER BY Customers.LastName, Customers.FirstName, CustomerUnits.UnitID

     

     

    It would appear something in these Windows Updates has broken ADO.NET.

    Wednesday, September 10, 2008 5:03 PM

Answers

  •  

    Thanks for the responses -- I found the problem.  It was not related to my query at all -- I had stepped up the Timer frequency to 1000 milliseconds (done via registry setting for my app, no code changes) -- apparently the background worker thread was being executed multiple times even though I do a check for IsBusy.  Bumping the Timer interval to 10000 (every 10 secs) resolved the problem.

     

    Rob.

    Friday, September 12, 2008 3:11 PM

All replies

  • Can you run SQL Server Profiler to see if application passes SQL statement to database server and if it is the same SQL statement as you have in your code? How do you execute your SQL statement to get data?

     

    Friday, September 12, 2008 9:40 AM
    Moderator
  • You might want to try removing some of the SQL, such as any criteria, to see if you can return any data at all. If eventually data is returned as you remove SQL, you should be able to at least identify the source of the problem.

    Friday, September 12, 2008 12:09 PM
  •  

    Thanks for the responses -- I found the problem.  It was not related to my query at all -- I had stepped up the Timer frequency to 1000 milliseconds (done via registry setting for my app, no code changes) -- apparently the background worker thread was being executed multiple times even though I do a check for IsBusy.  Bumping the Timer interval to 10000 (every 10 secs) resolved the problem.

     

    Rob.

    Friday, September 12, 2008 3:11 PM