指定轉碼 SAS 檔案所需之字元變數的特性。
有效期限: | LIBNAME 陳述式 |
類別: | 資料存取 |
PROC OPTIONS GROUP= | 作業環境文件中 Windows、UNIX 和 Z/OS 下的 LIBNAME 陳述式。 |
請參閱: | LIBNAME、SAS/ACCESS |
指定在處理需要轉碼的 SAS 資料檔案時擴充字元變數長度的位元組數。CVP 引擎會擴充長度,因此不會發生字元資料截斷。在目前長度上加上指定的值,即可增加字元變數的長度。您可以指定 0 到 32766 內的值。
libname expand 'SAS data-library' cvpbytes=5;
預設 | 如果您指定 CVPBYTES=,則 SAS 會自動使用 CVP 引擎,以根據您的指定來擴充字元變數的長度。如果您明確地指派 CVP 引擎,但未指定 CVPBYTES= 或 CVPMULTIPLIER=,則 SAS 會使用 CVPMULTIPLIER=1.5 來增加字元變數的長度。 |
限制 | CVP 引擎支援 SAS 資料檔案,不支援 SAS 檢視、目錄、項目存放區等。 |
CVP 引擎只適用於輸入 (讀取) 處理。 | |
針對含有 CVP 引擎之混合引擎的資料館串連,只會處理 SAS 資料檔案。例如,如果您執行 COPY 程序,則只會複製 SAS 資料檔案。 | |
需求 | 您指定的位元組數必須足以容納任何擴充。否則,還是會進行截斷,而在 SAS 日誌中產生錯誤訊息。 |
互動 | 您不可以同時指定 CVPBYTES= 和 CVPMULTIPLIER=。 請指定這兩個選項的其中一個。 |
請參閱 | 使用 CVP 引擎避免字元資料截斷 |
指定要使用的引擎,以處理需要轉碼的 SAS 資料檔案。 CVP 引擎會擴充字元變數的長度以進行轉碼,因此不會發生字元資料截斷。然後,指定的引擎會執行實際檔案處理。
別名 | CVPENG |
預設 | SAS 使用預設 SAS 引擎。 |
請參閱 | 使用 CVP 引擎避免字元資料截斷 |
指定乘數值,以在處理需要轉碼的 SAS 資料檔案時擴充字元變數的長度。CVP 引擎會擴充長度,因此不會發生字元資料截斷。將目前長度乘上指定的值即可增加字元變數的長度。您可以指定 1 到 5 內的乘數值。
libname expand 'SAS data-library' cvpmultiplier=2.5;
別名 | CVPMULT |
預設 | 如果您指定 CVPMULTIPLIER=,則 SAS 會自動使用 CVP 引擎,以根據您的指定來擴充字元變數的長度。如果您明確地指定 CVP 引擎,但未指定 CVPMULTIPLIER= 或 CVPBYTES=,則 SAS 會使用 CVPMULTIPLIER=1.5 來增加長度。 |
限制 | CVP 引擎支援 SAS 資料檔案,不支援 SAS 檢視、目錄、項目存放區等。 |
CVP 引擎只適用於輸入 (讀取) 處理。 | |
針對含有 CVP 引擎之混合引擎的資料館串連,只會處理 SAS 資料檔案。例如,如果您執行 COPY 程序,則只會複製 SAS 資料檔案。 | |
需求 | 您指定的位元組數必須足以容納任何擴充。否則,還是會進行截斷,而在 SAS 日誌中產生錯誤。 |
互動 | 您不可以同時指定 CVPMULTIPLIER= 和 CVPBYTES=。 請指定這兩個選項的其中一個。 |
請參閱 | 使用 CVP 引擎避免字元資料截斷 |
libname myfiles 'C:\Documents and Settings\sasdxw\My Documents\myfiles'; data myfiles.wlatin2 (encoding=wlatin2); var1='41'x; var2='8a'x; var3='9c'x; var4='b3'x; ; proc print data=myfiles.wlatin2; run;
The SAS System 1 The CONTENTS Procedure Data Set Name MYFILES.WLATIN2 Observations 1 Member Type DATA Variables 4 Engine V9 Indexes 0 Created Thursday, November 07, 2003 02:02:36 Observation Length 4 Last Modified Thursday, November 07, 2003 02:02:36 Deleted Observations 0 Protection Compressed NO Data Set Type Sorted NO Label Data Representation WINDOWS_32 Encoding wlatin2 Central Europe (Windows) Engine/Host Dependent Information Data Set Page Size 4096 Number of Data Set Pages 1 First Data Page 1 Max Obs per Page 987 Obs in First Data Page 1 Number of Data Set Repairs 0 File Name C:\Documents and Settings\xxxxxx\My Documents\myfiles\wlatin2.sas7bdat Release Created 9.0100A0 Host Created XP_PRO Alphabetic List of Variables and Attributes # Variable Type Len 1 Var1 Char 1 2 Var2 Char 1 3 Var3 Char 1 4 Var4 Char 1
options msglevel=i;
libname myfiles 'SAS data-library';
data myfiles.utf8 (encoding="utf-8");
set myfiles.wlatin2;
run;
DATA 步驟要求一個名為 MYFILES.UTF8 的新資料集,並要求以 UTF-8
編碼方式將資料讀入新資料集中,這表示必須將資料從 Wlatin2
轉碼為 UTF-8。要求會導致因轉碼而進行字元資料截斷的錯誤。新資料集 MYFILES.UTF8 會建立但未包含任何資料。1 options msglevel=i; 2 libname myfiles 'C:\Documents and Settings\xxxxxx\My Documents\myfiles'; NOTE: Libref MYFILES was successfully assigned as follows: Engine: V9 Physical Name: C:\Documents and Settings\xxxxxx\My Documents\myfiles 3 data myfiles.utf8 (encoding="utf-8"); 4 set myfiles.wlatin2; 5 run; INFO: Data file MYFILES.UTF8.DATA is in a format native to another host or the file encoding does not match the session encoding. Cross Environment Data Access will be used, which may require additional CPU resources and reduce performance. ERROR: Some character data was lost during transcoding in the data set MYFILES.UTF8. NOTE: The data step has been abnormally terminated. NOTE: The SAS System stopped processing this step because of errors. NOTE: There were 1 observations read from the data set MYFILES.WLATIN2. WARNING: The data set MYFILES.UTF8 may be incomplete. When this step was stopped there were 0 observations and 4 variables.
options msglevel=i; libname myfiles 'SAS data-library'; libname expand cvp 'SAS data-library' cvpbytes=2; data myfiles.utf8 (encoding="utf-8"); set expand.wlatin2; run;
12 options msglevel=i; 13 libname myfiles 'C:\Documents and Settings\xxxxxx\My Documents\myfiles'; NOTE: Directory for library MYFILES contains files of mixed engine types. NOTE: Libref MYFILES was successfully assigned as follows: Engine: V9 Physical Name: C:\Documents and Settings\xxxxxx\My Documents\myfiles 14 libname expand cvp 'C:\Documents and Settings\xxxxxx\My Documents\myfiles' cvpbytes=2; WARNING: Libname EXPAND refers to the same physical library as MYFILES. NOTE: Libref EXPAND was successfully assigned as follows: Engine: CVP Physical Name: C:\Documents and Settings\xxxxxx\My Documents\myfiles 15 data myfiles.utf8 (encoding="utf-8"); 16 set expand.wlatin2; 17 run; INFO: Data file MYFILES.UTF8.DATA is in a format native to another host or the file encoding does not match the session encoding. Cross Environment Data Access will be used, which may require additional CPU resources and reduce performance. NOTE: There were 1 observations read from the data set EXPAND.WLATIN2. NOTE: The data set MYFILES.UTF8 has 1 observations and 4 variables.
The SAS System 1 The CONTENTS Procedure Data Set Name MYFILES.UTF8 Observations 1 Member Type DATA Variables 4 Engine V9 Indexes 0 Created Thursday, November 07, 2003 02:40:34 Observation Length 12 Last Modified Thursday, November 07, 2003 02:40:34 Deleted Observations 0 Protection Compressed NO Data Set Type Sorted NO Label Data Representation WINDOWS_32 Encoding utf-8 Unicode (UTF-8) Engine/Host Dependent Information Data Set Page Size 4096 Number of Data Set Pages 1 First Data Page 1 Max Obs per Page 335 Obs in First Data Page 1 Number of Data Set Repairs 0 File Name C:\Documents and Settings\xxxxxx\My Documents\myfiles\utf8.sas7bdat Release Created 9.0100A0 Host Created XP_PRO Alphabetic List of Variables and Attributes # Variable Type Len 1 Var1 Char 3 2 Var2 Char 3 3 Var3 Char 3 4 Var4 Char 3