Book a Demo

Author Topic: DAO.Recordset[3022] Error  (Read 18133 times)

dsf_27

  • EA Novice
  • *
  • Posts: 1
  • Karma: +0/-0
  • I love YaBB 1G - SP1!
    • View Profile
DAO.Recordset[3022] Error
« on: November 15, 2007, 08:19:37 am »
Hello,

While trying to import a an existing package from an XMI file, I inconsistently receive a DAO.Recordset[3022] error.

"The changes you requested to the table were not successful because they would create duplicate values in the index, primary key, or relationship"

I seem to only be getting this error when I try to import a package larger than 3000K.

Extermely odd behavior. Once this happens, I can no longer import packages smaller than 3000k (get the same error). EA also creates two packages in the model when this happens (this could be what is causing this error, but Im not sure why the second package is being created to begin with).

Has anyone seen this error before?

Thanks.  

armin

  • EA User
  • **
  • Posts: 63
  • Karma: +0/-0
  • mission possible
    • View Profile
Re: DAO.Recordset[3022] Error
« Reply #1 on: February 26, 2008, 03:57:30 am »
Hi all,

same error... please help.

Tried to repair datafile. Got the message:"the changes ayou requested to the table where not successful becasuse they would create duplicate values in the index, primary key or relationship. Change the data in the field or fields that contain duplicate data, remove the index or redefine the index to permit duplicate entries and try again."
Even data transfer to another project failed with the message and additional information: "select * from t_xref Field: link".
After that I tried to Recover and clean the project:
DAO.Database[3000] Rerserved error -1601; SQL=Delete from t_connector where Connector_ID in (79927)

I'm not sure if it is a serious problem or if we can go on with modelling and ignore this problem. What can we do to repair the database?

Thanx for help in advance

Armin

«Midnight»

  • EA Guru
  • *****
  • Posts: 5651
  • Karma: +0/-0
  • That nice Mister Grey
    • View Profile
Re: DAO.Recordset[3022] Error
« Reply #2 on: February 26, 2008, 07:19:55 am »
Did you try Tools | Data Management | Project Integrity Check?
No, you can't have it!

bmioch

  • EA User
  • **
  • Posts: 81
  • Karma: +0/-0
    • View Profile
Re: DAO.Recordset[3022] Error
« Reply #3 on: February 26, 2008, 01:13:57 pm »
Also, do you have auditing turned on?

armin

  • EA User
  • **
  • Posts: 63
  • Karma: +0/-0
  • mission possible
    • View Profile
Re: DAO.Recordset[3022] Error
« Reply #4 on: February 26, 2008, 08:04:59 pm »
Project Integrity Check: Yes, Message: "DAO.Database[3000] Rerserved error -1601; SQL=Delete from t_connector where Connector_ID in (79927)"

Auditing no. Ididn't know that feature until now. I will use it in  future :).

After posting my message yesterday, I transfered my project to another project, ignoring all error messages. The new project seems to be clean, but is it complete? Is there any possibility to check content of old project against content of new project?

«Midnight»

  • EA Guru
  • *****
  • Posts: 5651
  • Karma: +0/-0
  • That nice Mister Grey
    • View Profile
Re: DAO.Recordset[3022] Error
« Reply #5 on: February 26, 2008, 10:59:35 pm »
Hi Armin,

You are probably safe. I suspect - entirely without proof, so don't go on this without testing - that the bad connector error was actually a duplication of something on one end the other. This seems to result in EA getting lost. It almost seems as if the 'strip GUID' setting gets flipped at this point, resulting in duplicates.

You could write a short program in an external tool that read through a complete XMI extract of both projects. The tool would count the connectors and elements, then compare the list of GUIDs for each. It could then tell you which GUIDs were 'surplus' in one copy of the model. You could then look them up in an editor. If there are more than a very small number you have a problem. If there are only a few you should be able to see whether they are obviously 'broken' in the old model. If so, you've likely repaired your project. If not, you can recreate them in the new model.

I wonder if there is some way to do a baseline compare. Since you did a project transfer, the two projects might 'think' they are the same.

Regardless, make copies of both projects immediately. If they are not the same then this will be your lifeline.

Note that auditing should only work with DBMS projects - at least that was how it worked in early 7.0 days. [I sometimes wonder if you can turn it on when you open an EAP file through OLEDB, but let's not go there...]

No, you can't have it!