I am trying to run the following SQL statement and I'm getting an error message. Do you have any suggestions? The file was not created with a DDS. The file was created using SQL via .NET.
RUNSQLSTM SRCFILE(DRISCOLL/QSQLSRC) SRCMBR(UUPDSIEBIN)
This is what the source member looks like:
INSERT INTO ICKIPRDEXT/SIEBIND (SIEBIND) VALUES (1);
SQL7008 30 1 Position 1 SIEBIND in ICKIPRDEXT not valid for operation. SQL7961 0 Rollback completed.
SQL7008 is usually a journaling issue. Meaning you're using a commitment control level other than *NONE on the RUNSQLSTM command and then changing DB2 tables or physical files that are not journaled.
If that's not the case, we would need a little more information to be able to determine the cause of the problem in your particular case. Run the SQL statement again and find the SQL7008 message in your joblog. Press F1 to display the message help text. Look for the reason code generated for the error. All the reason codes and suggested solutions are listed in the message help text. This should give you a little more insight as to what the problem is and how to solve it.
Dig Deeper on Debugging
Related Q&A from Kent Milligan
Create a host variable of the where in statement on the fly with dynamic SQL. Continue Reading
To solve the SQL error -321 on IBM i6.1, use the new values statement to overcome the error. If you are using an older release, declare a cursor ... Continue Reading
When working with DB2 files with columns that have both short and long names, there is no option choose which column names are returned via ODBC ... Continue Reading