Usage Note 8473: "Error in results set for update" when updating a Sybase view with DATA
step MODIFY
If you use SAS/ACCESS Interface to Sybase on SAS V8.2 (WIN and Unix)
with Sybase Client V12.5, and you create a view to a Sybase table and
attempt to update the view with a DATA step MODIFY statement, you
may receive the following error:
ERROR: Error in results set for Update. Error Code: -102 Incorrect
syntax near 's'.
The problem occurs when a SAS data set is created with character
data, but when created, contains single quotation marks surrounding the
character string. For example:
data updates;
input @1 number 2.
@4 ddesc $20.;
format number z2.;
cards;
1 'update111'
2 'update222'
3 'update333'
4 'update444'
;
When a DATA step MODIFY is performed, SAS does not assume that quotes
are already surrounding the string, and puts the quotes on the string
in order to form an UPDATE statement to be sent to the database. This
causes an error.
A Technical Support hot fix for Release 8.2 TSLEVEL TS2M0 for this
issue is available at:
http://www.sas.com/techsup/download/hotfix/82_sbcs_prod_list.html#008473
However, you must set an environment variable to SYBQUOTECHK with a
value of 1 for both the PC and Unix platforms, so that the fix is
activated for quoting. The use of this feature will negatively affect
performance, because of the code having to parse through each string
byte by byte.
Operating System and Release Information
| SAS System | SAS/ACCESS Interface to Sybase | Microsoft Windows NT Workstation | 8.2 TS2M0 | |
| Microsoft Windows XP Professional | 8.2 TS2M0 | |
| Microsoft Windows 2000 Server | 8.2 TS2M0 | |
| Windows Millennium Edition (Me) | 8.2 TS2M0 | |
| Microsoft Windows 95/98 | 8.2 TS2M0 | |
| Microsoft Windows 2000 Professional | 8.2 TS2M0 | |
| Solaris | 8.2 TS2M0 | |
| Microsoft Windows 2000 Datacenter Server | 8.2 TS2M0 | |
| Microsoft Windows 2000 Advanced Server | 8.2 TS2M0 | |
| 64-bit Enabled HP-UX | 8.2 TS2M0 | |
| 64-bit Enabled Solaris | 8.2 TS2M0 | |
| HP-UX | 8.2 TS2M0 | |
| Tru64 UNIX | 8.2 TS2M0 | |
| AIX | 8.2 TS2M0 | |
| 64-bit Enabled AIX | 8.2 TS2M0 | |
*
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.
| Type: | Usage Note |
| Priority: | medium |
| Topic: | SAS Reference ==> LIBNAME Engines Data Management ==> Data Sources ==> External Databases ==> Sybase
|
| Date Modified: | 2002-12-04 11:27:08 |
| Date Created: | 2002-09-17 10:15:45 |