DBSERVER_MAX_BYTES= LIBNAME Option

Specifies the maximum number of bytes per single character in the database server encoding.
Valid in: SAS/ACCESS LIBNAME statement
Default: usually 1
Data source: DB2 under UNIX and PC Hosts, Oracle, Sybase
See: ADJUST_BYTE_SEMANTIC_COLUMN_LENGTHS= LIBNAME option, ADJUST_NCHAR_COLUMN_LENGTHS= LIBNAME option, DBCLIENT_MAX_BYTES= LIBNAME option, DB_LENGTH_SEMANTICS_BYTE= LIBNAME option

Syntax

DBSERVER_MAX_BYTES=max-server-bytes

Details

Use this option to derive (adjust the value of) the number of characters from the client column lengths that byte semantics initially creates. Although the default is usually 1, you can use this option to set it to another value if this information is available from the Oracle server.
Sybase: You can use this option to specify different byte encoding between the SAS client and the Sybase server. For example, if the client uses double-byte encoding and the server uses multibyte encoding, specify DBSERVER_MAX_BYTES=3. In this case, the SAS/ACCESS engine evaluates this option only if you specify a value that is greater than 2. Otherwise, it indicates that both client and server use the same encoding scheme.

Example: Adjust Specific Column Lengths

Only the lengths that you specify with DBSERVER_MAX_BYTES= affect column lengths that byte semantics created initially.
libname x4 &engine &connopt DBSERVER_MAX_BYTES=4 DBCLIENT_MAX_BYTES=1
ADJUST_NCHAR_COLUMN_LENGTHS=no;
proc contents data=x4.char_sem; run;
proc contents data=x4.nchar_sem; run;
proc contents data=x4.byte_sem; run;
proc contents data=x4.mixed_sem; run;
In this example, various options have different settings.
libname x5 &engine &connopt ADJUST_NCHAR_COLUMN_LENGTHS=NO
ADJUST_BYTE_SEMANTIC_COLUMN_LENGTHS=NO DBCLIENT_MAX_BYTES=3;
proc contents data=x5.char_sem; run;
proc contents data=x5.nchar_sem; run;
proc contents data=x5.byte_sem; run;
proc contents data=x5.mixed_sem; run;
This example also uses different settings for the various options.
libname x6  &engine &connopt ADJUST_BYTE_SEMANTIC_COLUMN_LENGTHS=YES
ADJUST_NCHAR_COLUMN_LENGTHS=YES DBCLIENT_MAX_BYTES=3;
proc contents data=x6.char_sem; run;
proc contents data=x6.nchar_sem; run;
proc contents data=x6.byte_sem; run;
proc contents data=x6.mixed_sem; run;