SAS库更改

SAS库更改,sas,Sas,我想更改库名(许多表被分配给该库)。是否可以只将库名称“编辑”为新库名称,或者是否有必要创建一个新库,然后将表移动到其中? 编辑现有库的名称时不会损坏表吗?库是指向文件/位置的指针。您可以更改名称,而不会影响库中的任何文件。您还可以将多个库指向同一位置,但如果您这样做,SAS会发出警告 libname demo '/folders/myfolders/'; *place file in demo; proc copy in=sashelp out=demo; sel

我想更改库名(许多表被分配给该库)。是否可以只将库名称“编辑”为新库名称,或者是否有必要创建一个新库,然后将表移动到其中?
编辑现有库的名称时不会损坏表吗?

库是指向文件/位置的指针。您可以更改名称,而不会影响库中的任何文件。您还可以将多个库指向同一位置,但如果您这样做,SAS会发出警告

   libname demo '/folders/myfolders/';

   *place file in demo;
    proc copy in=sashelp out=demo;
    select class;
    run;quit;

   *clear demo;
   libname demo;

   *assign new library to same location;
   libname myFiles '/folders/myfolders/';

   *check items;
   proc datasets lib=myFiles;run;quit;

将SAS库与libref(快捷方式名称)关联或解除关联,清除一个或所有libref,列出 SAS库的特征,连接SAS库,或 连接SAS目录

库是可以找到数据集的地方。该位置可以是文件夹、json文件、xml文件、远程数据库或任何其他文件

LIBREF是指这样一个地方

LIBNAME
语句用于创建一个LIBREF,并提供库引擎所需的任何选项,以协调对数据集的访问

可以有多个libref指向同一个库

LIBNAME zoinks 'c:\projects\x\sasdata';
LIBNAME sweets 'c:\projects\x\sasdata'; 
还可以使用连接将libref点指向多个位置

例如:

假设一些公司根据年份和季度将数据集存储在单独的文件夹中,但您希望通过一个libref访问它们

LIBNAME INS2020
( 'c:\insurance\2020Q1'
  'c:\insurance\2020Q2'
  'c:\insurance\2020Q3'
  'c:\insurance\2020Q$'
);

libref是数据访问的名字对象。更改(重构)libref类似于给某人(或某个地方)一个比过去更好的昵称。

您是如何创建库的?您是否运行了自己的LIBNAME语句?还是你在使用受控环境?回答得很好Richard。