Доступ к таблицам FileTable с помощью Transact-SQL
Область применения: SQL Server
Описывает, как команды DML языка обработки данных Transact-SQL работают с таблицами FileTable.
Операции INSERT в таблицах FileTable
С операциями INSERT в таблицах FileTable связаны следующие моменты:
Все столбцы атрибутов файла имеют ограничения NO NULL. Если значения не заданы явным образом, предоставляются соответствующие значения по умолчанию.
Если инструкция INSERT задает значения для параметров name, path_locator, parent_path_locatorили атрибуты файлов, то применяются системные ограничения.
Приложение может получить path_locator для файла или каталога, предоставив путь к функции GetPathLocator (Transact-SQL).
Операции UPDATE в таблицах FileTable
С операциями UPDATE в таблицах FileTable связаны следующие моменты:
Разрешается обновлять любые данные, определяемые пользователем.
Если инструкция INSERT задает значения для параметров name, path_locator, parent_path_locatorили атрибуты файлов, то применяются системные ограничения.
Обновления данных FILESTREAM в столбце file_stream не влияют ни на какие другие столбцы, включая отметки времени.
Операции DELETE в таблицах FileTable
С операциями DELETE в таблицах FileTable связаны следующие моменты.
При удалении строки удаляется соответствующий файл или каталог из файловой системы.
Невозможно удалить строку, если она относится к каталогу, который содержит другие файлы или каталоги.
Ограничения, необходимые для операций DML в таблицах FileTable
Определяемые системой ограничения обеспечивают сохранение целостности иерархии пространства имен файлов во время операций DML. Принудительно применяются следующие ограничения.
При установке или изменении name файла или каталога:
Поддерживаются обозначения имен файлов и каталогов Windows.
Обеспечивается уникальность имени в родительском каталоге.
При установке или изменении расположения файла или каталога путем назначения или редактирования path_locator или parent_path_locator:
Обеспечивается уникальность.
Обеспечивается согласованность иерархического дерева каталогов и файлов, включая согласованность значений path_locator и parent_path_locator .
Значение is_directory не может быть задано как true для ненулевого столбца file_stream . Данные в столбце file_stream показывают, что строка соответствует файлу, а не каталогу.
Столбцы атрибутов файлов не могут иметь значение NULL. Ограничения NOT NULL применяются со значениями по умолчанию.
Значение last_access_time не может быть меньше (раньше), чем last_write_time и creation_time.
См. также
Загрузка файлов в таблицы FileTable
Work with Directories and Paths in FileTables
Доступ к таблицам FileTable с помощью API-интерфейсов ввода-вывода файлов
Инструкции FileTable языка DDL, функции, хранимые процедуры и представления