JetDupCursor-Funktion
Letzte Änderung: Freitag, 27. Februar 2015
Gilt für: Windows | Windows Server
JetDupCursor-Funktion
Die Funktion JetDupCursor dupliziert einen geöffneten Cursor und gibt ein Handle für den duplizierten Cursor. Wenn der Cursor, der dupliziert wurde ein schreibgeschützter Cursor war ist der duplizierte Cursor auch einen schreibgeschützten Cursor. Zuständen Suchschlüssel erstellen oder Aktualisieren eines Datensatzes wird in den duplizierten Cursor nicht kopiert. Die ursprüngliche Cursorposition wird darüber hinaus in den duplizierten Cursor nicht dupliziert. Für den gruppierten Index ist immer der duplizierte Cursor geöffnet und befindet sich immer in der ersten Zeile der Tabelle.
JET_ERR JET_API JetDupCursor(
__in JET_SESID sesid,
__in JET_TABLEID tableid,
__out JET_TABLEID* ptableid,
__in JET_GRBIT grbit
);
Parameter
sesid
Die Sitzung für diesen Aufruf verwenden.
Tabellen-ID
Der Cursor für diesen Aufruf verwenden.
ptableid
Zeiger auf Tableid.
JET_errInvalidGrbit
Für die zukünftige Verwendung reserviert.
Return Value
Diese Funktion gibt den Datentyp der JET_ERR mit einem der folgenden Rückgabecodes. Weitere Informationen zu den möglichen ESE-Fehlern finden Sie unter Extensible Storage Engine-Fehler und Fehler behandeln Parameter.
Rückgabecode |
Beschreibung |
---|---|
JET_errSuccess |
Der Vorgang wurde erfolgreich abgeschlossen. |
JET_errClientRequestToStopJetService |
Es ist nicht möglich, um den Vorgang abzuschließen, da alle Aktivitäten in der Instanz dieser Sitzung aufgrund eines Aufrufs von JetStopServiceeingestellt hat. |
JET_errInstanceUnavailable |
Es ist nicht möglich, um den Vorgang abzuschließen, da die Sitzung zugeordnete Instanz ein schwerwiegender Fehler, der erfordert aufgetreten ist, dass der Zugriff auf alle Daten gesperrt werden, um die Integrität der Daten zu schützen. Dieser Fehler wird nur von Windows XP und späteren Versionen zurückgegeben werden. |
JET_errNotInitialized |
Es ist nicht möglich, um den Vorgang abzuschließen, da die Instanz dieser Sitzung noch nicht initialisiert wurde. |
JET_errOutOfCursors |
Keine verfügbaren Cursor Ressourcen vorhanden sind. |
JET_errRestoreInProgress |
Es ist nicht möglich, um den Vorgang abzuschließen, da ein Wiederherstellungsvorgang ausgeführt auf die Instanz der Sitzung zugeordnet wird. |
JET_errSessionSharingViolation |
Die gleiche Sitzung kann für mehrere Threads gleichzeitig verwendet werden. Dieser Fehler wird nur von Windows XP und späteren Versionen zurückgegeben werden. |
JET_errTermInProgress |
Es ist nicht möglich, um den Vorgang abzuschließen, da die Sitzung zugeordnete Instanz heruntergefahren wird. |
Bei Erfolg wird Ptableid auf einen duplizierten Cursor festgelegt.
Bei einem Fehler werden keine Änderungen vorgenommen. Die Tabellen-ID ist unverändert.
Anmerkungen
Duplizierte Cursor muss nicht die gesamte Cursorstatus kopiert. Die Position des duplizierten Cursors, einschließlich den aktuellen Index unterscheidet sich in der Regel vom angegebenen Cursor. Duplizierte Cursor wird stets für den gruppierten Index und in der ersten Zeile in der Tabelle zurückgegeben. Wenn die Tabelle leer ist, ist der duplizierte Cursor nicht in einer Zeile.
Tabellen mit JetDupCursor geöffnet, sollte in der Regel mit JetCloseTablegeschlossen werden. Die Ausnahme von dieser Regel geschieht, wenn JetDupCursor in einer Transaktion aufgerufen, und die Transaktion ein (mit JetRollback Rollback wird). Beim Rollback einer Transaktion wird der Cursor automatisch geschlossen. In diesem Fall ist es ein Fehler, schließen Sie die Tabelle mit den JetCloseTable.
Die Anzahl der Tabellen, die gleichzeitig geöffnet werden können, wird direkt von JET_paramMaxOpenTablesbeeinflusst. Einzelheiten finden Sie unter System-Parameter .
Voraussetzungen
-Client, |
Erfordert Windows Vista, Windows XP oder Windows 2000 Professional. |
Server |
Erfordert WindowsServer 2008, WindowsServer 2003 oder Windows 2000 Server. |
Kopfzeile |
In Esent.h deklariert. |
Library |
Verwenden Sie ESENT.lib. |
DLL |
"ESENT.dll" erfordert. |
Siehe auch
JET_GRBIT
JET_SESID
JET_TABLEID
JetCloseTable
JetRollback
JetStopService
Systemparameter