When troubleshooting errors in an EQuIS log, take a look at the entire error message as it offers important details about the data failure. Here is an example.
ERROR RT_ANALYTE HARD|HARDNESS||... "Violation of PRIMARY KEY constraint 'PK_RT_ANALYTE_534D60F1'. Cannot insert duplicate key in object 'RT_ANALYTE'. The statement has been terminated.
The first part of the message is "ERROR." This tells us that the record referenced has an error and will therefore fail to load into the EQuIS database. Other values, i.e., INFO and WARNING, indicate the system made note of a process or issue that will not prevent your data from loading.
The next piece of information is "RT_ANALYTE". This tells us the error occurred while trying to enter data into the RT_ANALYTE table.
The next value in the error message is "HARD|HARDNESS." These are the values that caused a problem for the commit or migration. Looking at the RT_ANALYTE table, we see that the first two columns of the table are CAS_RN and CHEMICAL_NAME. The failure occurred here when trying to load HARD into the CAS_RN field and HARDNESS into CHEMICAL_NAME.
The next piece of the error message offers information as to why the error occurred: "Violation of PRIMARY KEY constraint 'PK_RT_ANALYTE_534D60F1.' Cannot insert duplicate key in object 'RT_ANALYTE'." This tells us that the entry of HARD|HARDNESS in the RT_ANALYTE table failed because of the PRIMARY key constraint. Checking the RT_ANALYTE table reveals the primary key field is CAS_RN.
Putting all of this information together, we learn that the value HARD must already exist in the RT_ANALYTE table, possibly with a different CHEMICAL_NAME listed.
Copyright © 2020 EarthSoft, Inc • Modified: 13 Mar 2020