locked
Which forum would be best for this question? RRS feed

  • Question

  • We have an application written in VB6 that utilizes ADO and Microsoft Jet and Replication, specifically Microsoft ActiveX Data Objects 2.5 Library and Microsoft Jet and Replication Objects 2.5 Library. The application has been in daily use in hundreds of government offices for 11 years. The database part of the application has been very stable until recently. We started noticing a problem in about October 2013. Sometimes when the user looks up some specific account, the application will return an error that says "record has been deleted". If we run a JRO compact routine that we utilize in our backup process, the problem is fixed. It is my assumption that this JRO compact routine is the same process that is run in Access 2000 when I ckick Tools > Database Utilities > Compact and Repair Database. The code that calls the JRO.CompactDatabase is listed below. 

        Dim jro1 As JRO.JetEngine
        Set jro1 = New JRO.JetEngine
        'compressDatabase
        jro1.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & XXmdb, _
        "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & BUmdb
        Set jro1 = Nothing 

    (*** NOTE: the JRO routine is the current best solution to our problem, not in any way we know of the cause of the problem.)

    We are unable to duplicat the error except to the extent that if the problem exists in a mdb file we can, after we are told which account to access, see the error when we look up that account. We have not been able to find out how or when the error / problem / corruption is created in our application.

    We expect that some routine or process that is run on an account, under certain conditions, encounters an error or creates a corruption and that this error, due to some error handling routine or lack of one, goes un-noticed at the time the corruption happens. 

    This error has occured maybe 50 times since October 2012. If the error occured prior to that time, it occured so seldom that we have no memory of it. The office in which this error occurs most often did install a new server with new server software the first week of October. The problem has happened in maybe 5 offices in addition the the office mentioned. We do not think this problem is caused by any version updates to have made.

    Any ideas as to what or why?

    Thanks for your help, John Brown
    • Moved by Reed KimbleMVP Monday, January 13, 2014 10:04 PM not vb.net related
    Monday, January 13, 2014 6:25 PM

Answers

  • If I look at your message header  probably this one.

    http://www.antique-shop.com/forums/index.php?PHPSESSID=e255cf28a9de494fa16d5578f9fc8e79;www

    There is for sure no Microsoft one anymore. 

    But there are still a lot of people who want to keep VB6 alive. 

    If I do a search on Google with those who where the last week active I get this one.

    http://www.vbforums.com/forumdisplay.php?1-Visual-Basic-6-and-Earlier


    Success
    Cor


    • Edited by Cor Ligthert Monday, January 13, 2014 7:21 PM
    • Proposed as answer by Just Karl Tuesday, January 14, 2014 4:04 AM
    • Marked as answer by Just Karl Sunday, January 26, 2014 2:07 AM
    Monday, January 13, 2014 7:20 PM
  • I'll have to move this off-topic because as Cor says, VB6 is dead and gone as far as support is concerned.  There is a sticky thread at the top of these VB forums which also contains some links to VB6 resources.

    That said, it sounds to me like you've reached the limit of the access database.

    This error is COMMON with old access databases once they reach a certain size and age.  You will have to continually perform the compact and repair when these errors occur and they will continue to occur periodically now that the database has reached a certain size and level of activity.  As records are deleted, the error will reappear.

    The solution is to move onto SQL for the database since you have obviously exceeded what an access database was meant to handle.


    Reed Kimble - "When you do things right, people won't be sure you've done anything at all"

    • Proposed as answer by Just Karl Tuesday, January 14, 2014 4:04 AM
    • Marked as answer by Just Karl Sunday, January 26, 2014 2:07 AM
    Monday, January 13, 2014 10:03 PM

All replies

  • If I look at your message header  probably this one.

    http://www.antique-shop.com/forums/index.php?PHPSESSID=e255cf28a9de494fa16d5578f9fc8e79;www

    There is for sure no Microsoft one anymore. 

    But there are still a lot of people who want to keep VB6 alive. 

    If I do a search on Google with those who where the last week active I get this one.

    http://www.vbforums.com/forumdisplay.php?1-Visual-Basic-6-and-Earlier


    Success
    Cor


    • Edited by Cor Ligthert Monday, January 13, 2014 7:21 PM
    • Proposed as answer by Just Karl Tuesday, January 14, 2014 4:04 AM
    • Marked as answer by Just Karl Sunday, January 26, 2014 2:07 AM
    Monday, January 13, 2014 7:20 PM
  • I'll have to move this off-topic because as Cor says, VB6 is dead and gone as far as support is concerned.  There is a sticky thread at the top of these VB forums which also contains some links to VB6 resources.

    That said, it sounds to me like you've reached the limit of the access database.

    This error is COMMON with old access databases once they reach a certain size and age.  You will have to continually perform the compact and repair when these errors occur and they will continue to occur periodically now that the database has reached a certain size and level of activity.  As records are deleted, the error will reappear.

    The solution is to move onto SQL for the database since you have obviously exceeded what an access database was meant to handle.


    Reed Kimble - "When you do things right, people won't be sure you've done anything at all"

    • Proposed as answer by Just Karl Tuesday, January 14, 2014 4:04 AM
    • Marked as answer by Just Karl Sunday, January 26, 2014 2:07 AM
    Monday, January 13, 2014 10:03 PM