Transact-SQL을 사용하여 FileTable에 액세스Access FileTables with Transact-SQL

FileTable에서 Transact-SQLTransact-SQL DML(데이터 조작 언어) 명령이 작동하는 방식에 대해 설명합니다.Describes how Transact-SQLTransact-SQL data manipulation language (DML) commands work with FileTables.

FileTable에 대한 INSERT 작업 INSERT Operations on FileTables

FileTable에 대해 INSERT 작업을 수행할 때는 다음 사항을 고려해야 합니다.The following considerations apply to INSERT Operations on FileTables:

  • 모든 파일 특성 열에 NOT NULL 제약 조건이 있습니다.All the file attribute columns have NOT NULL constraints. 값을 명시적으로 설정하지 않은 경우 적절한 기본값이 제공됩니다.If values are not explicitly set, then appropriate default values are supplied.

  • INSERT 문이 name, path_locator, parent_path_locator 또는 파일 특성을 설정하는 경우 시스템 정의 제약 조건이 적용됩니다.System-defined constraints are enforced if the INSERT statement sets the name, path_locator, parent_path_locator, or file attributes.

  • 응용 프로그램에서는 GetPathLocator(Transact-SQL) 함수에 파일 시스템 경로를 제공하여 파일 또는 디렉터리에 대한 path_locator를 가져올 수 있습니다.The application can obtain the path_locator for a file or directory by providing the file system path to the GetPathLocator (Transact-SQL) function.

FileTable에 대한 UPDATE 작업 UPDATE Operations on FileTables

FileTable에 대해 UPDATE 작업을 수행할 때는 다음 사항을 고려해야 합니다.The following considerations apply to UPDATE operations on FileTables:

  • 사용자 정의 데이터를 업데이트할 수 있습니다.Updates to any user-defined data are allowed.

  • INSERT 문이 name, path_locator, parent_path_locator또는 파일 특성을 설정하는 경우 시스템 정의 제약 조건이 적용됩니다.System-defined constraints are enforced if the INSERT statement sets the name, path_locator, parent_path_locator, or file attributes.

  • 타임스탬프를 포함하여 다른 열에 영향을 주지 않고 file_stream 열에서 FILESTREAM 데이터를 업데이트할 수 있습니다.Updates can be made to the FILESTREAM data in the file_stream column without affecting any of the other columns, including the timestamps.

FileTable에 대한 DELETE 작업 DELETE Operations on FileTables

FileTable에 대해 DELETE 작업을 수행할 때는 다음 사항을 고려해야 합니다.The following considerations apply to DELETE operations on FileTables:

  • 행을 삭제하면 해당 파일 또는 디렉터리도 파일 시스템에서 제거됩니다.Deleting a row also removes the corresponding file or directory from the file system.

  • 행이 다른 파일 또는 디렉터리가 포함된 디렉터리에 해당하는 경우 행이 삭제되지 않습니다.Deleting a row fails if the row corresponds to a directory that contains other files or directories.

FileTable에 대한 DML 작업에 적용되는 제약 조건 Constraints That Are Enforced for DML Operations on FileTables

시스템 정의 제약 조건은 DML 동작이 파일 네임스페이스 계층의 무결성을 훼손할 수 없도록 보장합니다.System-defined constraints ensure that DML actions do not compromise the integrity of the file namespace hierarchy. 적용되는 제약 조건은 다음과 같습니다.The constraints that are enforced include the following:

  • 파일 또는 디렉터리의 이름 을 설정하거나 변경할 경우:When you set or change the name of the file or directory:

    • Windows 파일 및 디렉터리 명명 규칙이 적용됩니다.Windows file and directory naming conventions are enforced.

    • 부모 디렉터리의 이름 고유성이 적용됩니다.The uniqueness of the name in the parent directory is enforced.

  • path_locator 또는 parent_path_locator를 설정하거나 변경하여 파일 또는 디렉터리의 위치를 설정하거나 변경할 경우:When you set or change the location of a file or directory by setting or changing the path_locator or parent_path_locator:

    • 고유성이 적용됩니다.Uniqueness is enforced.

    • path_locatorparent_path_locator 값의 일관성을 비롯하여 디렉터리 및 파일의 계층 구조 트리 일관성이 적용됩니다.The consistency of the hierarchical tree of directories and files is enforced, including the consistency of path_locator and parent_path_locator values.

  • file_stream 열이 null이 아닌 경우 is_directory 값을 true로 설정할 수 없습니다.The value of is_directory cannot be set to true when the file_stream column is not null. file_stream 열의 데이터는 행에 디렉터리가 아닌 파일이 표시됨을 나타냅니다.Data in the file_stream column indicates that the row represents a file and not a directory.

  • 파일 특성 열은 Null이 될 수 없습니다.File attribute columns cannot be null. NOT NULL 제약 조건은 기본값으로 적용됩니다.NOT NULL constraints are enforced with default values.

  • last_access_time 값은 last_write_timecreation_time보다 이전일 수 없습니다.The value of last_access_time cannot be earlier than last_write_time and creation_time.

참고 항목See Also

FileTable로 파일 로드 Load Files into FileTables
FileTable에서 디렉터리 및 경로 작업 Work with Directories and Paths in FileTables
파일 입/출력 API를 사용하여 FileTable 액세스 Access FileTables with File Input-Output APIs
FileTable DDL, 함수, 저장 프로시저 및 뷰 FileTable DDL, Functions, Stored Procedures, and Views