Zugreifen auf FileTables mit Transact-SQL

Beschreibt, wie die Befehle der Transact-SQL-Datenbearbeitungssprache (Data Manipulation Language, DML) mit FileTables funktionieren.

In diesem Thema

Ich möchte…

  • INSERT

  • UPDATE

  • DELETE

Weitere Informationen

  • Einschränkungen, die für DML-Vorgänge in FileTables erzwungen werden

INSERT-Vorgänge in FileTables

Die folgenden Überlegungen gelten für INSERT-Vorgänge in FileTables:

  • Alle Dateiattributspalten besitzen NOT NULL-Einschränkungen. Wenn Werte nicht explizit festgelegt werden, werden entsprechende Standardwerte angegeben.

  • Systemdefinierte Einschränkungen werden erzwungen, wenn die INSERT-Anweisung name, path_locator, parent_path_locator oder Dateiattribute festlegt.

  • Die Anwendung kann path_locator für eine Datei oder ein Verzeichnis abrufen, indem in der GetPathLocator (Transact-SQL)-Funktion der Dateisystempfad angegeben wird.

[NACH OBEN]

UPDATE-Vorgänge in FileTables

Die folgenden Überlegungen gelten für UPDATE-Vorgänge in FileTables:

  • Aktualisierungen an benutzerdefinierten Daten sind zulässig.

  • Systemdefinierte Einschränkungen werden erzwungen, wenn die INSERT-Anweisung name, path_locator, parent_path_locator oder Dateiattribute festlegt.

  • Aktualisierungen können an den FILESTREAM-Daten in der Spalte file_stream ohne Auswirkungen auf die anderen Spalten, einschließlich Timestamps, vorgenommen werden.

[NACH OBEN]

DELETE-Vorgänge in FileTables

Die folgenden Überlegungen gelten für DELETE-Vorgänge in FileTables:

  • Durch Löschen einer Zeile wird auch die entsprechende Datei oder das entsprechende Verzeichnis aus dem Dateisystem entfernt.

  • Das Löschen einer Zeile schlägt fehl, wenn die Zeile einem Verzeichnis entspricht, das andere Dateien oder Verzeichnisse enthält.

[NACH OBEN]

Einschränkungen, die für DML-Vorgänge in FileTables erzwungen werden

Systemdefinierte Einschränkungen stellen sicher, dass DML-Aktionen nicht die Integrität der Dateinamespacehierarchie beeinträchtigen. Zu den Einschränkungen, die erzwungen werden, gehören Folgende:

  • Wenn Sie name der Datei oder des Verzeichnisses festgelegt oder geändert haben:

    • Die Windows-Benennungskonventionen für Dateien und Verzeichnisse werden erzwungen.

    • Die Eindeutigkeit des Namens im übergeordneten Verzeichnis wird erzwungen.

  • Wenn Sie den Speicherort einer Datei oder eines Verzeichnisses durch Festlegen oder Ändern von path_locator oder parent_path_locator festgelegt oder geändert haben:

    • Eindeutigkeit wird erzwungen.

    • Die Konsistenz der hierarchischen Struktur von Verzeichnissen und Dateien wird erzwungen, einschließlich der Konsistenz der Werte path_locator und parent_path_locator.

  • Der Wert für is_directory kann nicht auf TRUE festgelegt werden, wenn die file_stream-Spalte nicht NULL ist. Daten in der file_stream-Spalte geben an, dass die Zeile eine Datei und nicht ein Verzeichnis darstellt.

  • Spalten mit Dateiattributen können nicht NULL sein. NOT NULL-Einschränkungen werden mit Standardwerten erzwungen.

  • Der Wert last_access_time kann nicht vor last_write_time und creation_time liegen.

[NACH OBEN]

Siehe auch

Konzepte

Laden von Dateien in FileTables

Arbeiten mit Verzeichnissen und Pfaden in FileTables

Zugreifen auf FileTables mit Datei-E/A-APIs

FileTable-DDL, Funktionen, gespeicherte Prozeduren und Sichten