What do you mean by that
But that new column is not used by the COBOL program
Are you saying that you haven't explicitly coded the column name/host variable or are you saying that the COBOL program, while running, will not access this column by any means, even as what @Prino pointed out.
However, I would suggest it is not a good practice to not re-compile the programs whenever there is a change in table schema.
What will happen if i don't do
That will depend on the criteria that I mentioned above. So, lets say if the COBOL program is not accessing this column, then there would be no effect on the results.
But, if the COBOL program is accessing the column (in ways that you don't know yet), then you can expect a BIND error (SQL -805) or a Timestamp mismatch error (SQL -818). Reason - the consistency token, or what we call as timestamp will not be same in the PACKAGE (which is part of the PLAN) as that in the LOAD module of your COBOL program.
I hope it helps!