Verwalten von Datenbankobjekten mit OLE DB (SQL Server Compact)

Microsoft In SQL Server Compact 3.5 (SQL Server Compact 3.5) muss ein Objekt exklusiv geöffnet werden, um es zu ändern.

Ändern von Objekten

Alle ITableDefinition-Methoden öffnen Tabellen für den exklusiven Zugriff. Falls die Tabelle bereits mit einer anderen Methode geöffnet wurde, tritt beim Aufrufen der ITableDefinition-Methode ein Fehler auf. Wenn z. B. ein Benutzer versucht, eine Spalte mithilfe von ITableDefinition::AddColumn zu einer Tabelle hinzuzufügen, während ein Cursor in dieser Tabelle geöffnet ist, kann die Spaltendefinition nicht geändert werden, und es wird ein Sperrfehler gemeldet. Beim Entwerfen Ihrer Anwendungen müssen Sie Sperrprobleme berücksichtigen, insbesondere wenn Sie Transaktionen verwenden.

Ändern von Spalten

Bestimmte Informationen zu Spalten können auch mithilfe von IAlterTable::AlterColumn geändert werden. Spalten weisen mehrere potenziell zu ändernde Elemente auf. Daher beschreibt die DBPROP_ALTERCOLUMN-Eigenschaft die Bestandteile der DBCOLUMNDESC-Struktur, die die zu ändernde Spalte definiert. Selbst wenn der Anbieter das Ändern von Eigenschaften unterstützt, bedeutet dies jedoch noch nicht, dass alle Eigenschaften geändert werden können. Die folgenden Eigenschaften können mithilfe des OLE DB-Anbieters für SQL Server Compact 3.5 geändert werden:

  • DBPROP_COL_DEFAULT
  • DBPROP_COL_SEED (nur für Identitätsspalten)
  • DBPROP_COL_INCREMENT (nur für Identitätsspalten)

Ändern von Indizes und Einschränkungen

Indizes und Einschränkungen können ebenfalls geändert werden. Weitere Informationen finden Sie unter OLE DB-Indizes (SQL Server Compact) und unter OLE DB-Einschränkungen (SQL Server Compact).