In SAS®9, when you use the SAS/ACCESS® Interface to Sybase, notes, warnings or errors are not being issued when attempting to insert data into a Sybase table with triggers using RAISERROR and PROC APPEND. The automatic macro variables, SQLXRC, SQLXMSG, SYSDBMSG and SYSDBRC, do not return anything either.
However, when you attempt to see whether this problem occurs outside of SAS using isql and bogus data, an error message similar to the following is issued:
1> use mercury
2> go
1> insert into mercury.dbo.merc_inv
(investment_num,deal_num,property_use_cde,invest_status_cde,
invest_type_cde,deal_type_cde,inv_grp_deal_num,currency_cde_re) values
('888315','888315','16','02','26','02','888315','yyy')
2> go
Msg 30002, Level 16, State 1:
Server 'SDS_SY26', Procedure 'ti_merc_inv', Line 762:
Foreign key in "merc_inv" cannot be inserted. Row in "currency_val"
does not exist.
(1 row affected)
To see additional error messages, you must set the following environment variable based on your operating system:
PC:
set SY_SAS_MSG_CHECK=1
UNIX:
export SY_SAS_MSG_CHECK=1
OpenVMS
assign 1 SY_SAS_MSG_CHECK
Click the Hot Fix tab in this note to access the hot fix for this issue.
Operating System and Release Information
SAS System | SAS/ACCESS Interface to Sybase | Linux on Itanium | 9.1 TS1M3 | |
64-bit Enabled Solaris | 9.1 TS1M3 | |
Linux | 9.1 TS1M3 | |
64-bit Enabled AIX | 9.1 TS1M3 | |
64-bit Enabled HP-UX | 9.1 TS1M3 | |
HP-UX IPF | 9.1 TS1M3 | |
Microsoft® Windows® for 64-Bit Itanium-based Systems | 9.1 TS1M3 | |
Tru64 UNIX | 9.1 TS1M3 | |
*
For software releases that are not yet generally available, the Fixed
Release is the software release in which the problem is planned to be
fixed.