SUPPORT / SAMPLES & SAS NOTES
 

Support

Problem Note 32370: DBLOAD procedure does not write non-English characters to Microsoft SQL Server Unicode Field

DetailsHotfixAboutRate It

Using the SAS/ACCESS® Interface to ODBC DBLoad procedure to write to a Microsoft SQL Server Unicode column, SAS defaults to a CHAR variable type. The Windows system locale and SAS session locale are set to the same value—English—but the non-English characters are converted to question marks (????) when written to the ODBC data source.

To use the DBLoad Procedure to write non-Latin1 data to a Microsoft SQL Server Unicode column, use the TYPE statement, as follows:

proc dbload dbms=odbc data=work.customer;
  dsn=sqldsn;
  user="userid";
  password="password";
  table=mytab;
  type 3 = 'nvarchar(8)';
  list all;
  load;
run;

In the preceding code, the third column would be created with a NVARCHAR(8) on the SQL Server side.

Users of the Libname/ODBC Engine statement should specify the DBTYPE Data Set Option.



Operating System and Release Information

Product FamilyProductSystemSAS Release
ReportedFixed*
SAS SystemSAS/ACCESS Interface to ODBCMicrosoft® Windows® for 64-Bit Itanium-based Systems9.1 TS1M3 SP49.2 TS1M0
Microsoft Windows Server 2003 Datacenter 64-bit Edition9.1 TS1M3 SP49.2 TS1M0
Microsoft Windows Server 2003 Enterprise 64-bit Edition9.1 TS1M3 SP49.2 TS1M0
Microsoft Windows XP 64-bit Edition9.1 TS1M3 SP49.2 TS1M0
Microsoft® Windows® for x649.1 TS1M3 SP49.2 TS1M0
Microsoft Windows 2000 Advanced Server9.1 TS1M3 SP49.2 TS1M0
Microsoft Windows 2000 Datacenter Server9.1 TS1M3 SP49.2 TS1M0
Microsoft Windows 2000 Server9.1 TS1M3 SP49.2 TS1M0
Microsoft Windows 2000 Professional9.1 TS1M3 SP49.2 TS1M0
Microsoft Windows NT Workstation9.1 TS1M3 SP4
Microsoft Windows Server 2003 Datacenter Edition9.1 TS1M3 SP49.2 TS1M0
Microsoft Windows Server 2003 Enterprise Edition9.1 TS1M3 SP49.2 TS1M0
Microsoft Windows Server 2003 Standard Edition9.1 TS1M3 SP49.2 TS1M0
Microsoft Windows XP Professional9.1 TS1M3 SP49.2 TS1M0
Windows Vista9.1 TS1M3 SP49.2 TS1M0
* 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.