Freigeben über


Append-Methode (ADO)

Fügt einer Auflistung ein Objekt hinzu. Wenn die Auflistung Fields ist, kann ein neues Field-Objekt erstellt werden, bevor es an die Auflistung angefügt wird.

Syntax

  
collection.Append object  
fields.Append Name, Type, DefinedSize, Attrib, FieldValue  

Parameter

collection
Ein Auflistungsobjekt (collection).

fields
Einer Felderauflistung.

object
Eine Objektvariable, die das Objekt darstellt, das angefügt werden soll.

Name
Ein String-Wert (Zeichenfolge), der den Namen des neuen Field-Objekts enthält und nicht denselben Namen wie ein anderes Objekt in Fields haben darf.

Type
Ein DataTypeEnum-Wert, dessen Standardwert adEmpty ist, der den Datentyp des neuen Felds angibt. Die folgenden Datentypen werden von ADO nicht unterstützt und sollten nicht verwendet werden, wenn neue Felder an ein Recordset-Objekt (ADO) angefügt werden: adIDispatch, adIUnknown, adVariant.

DefinedSize
Optional. Ein Long-Wert, der die definierte Größe des neuen Felds in Zeichen oder Bytes darstellt. Der Standardwert für diesen Parameter wird von Type abgeleitet. Felder mit einer DefinedSize größer als 255 Bytes werden als Spalten mit variabler Länge behandelt. Die Standardeinstellung für DefinedSize ist „keine Angabe“.

Attrib
Optional. Ein FieldAttributeEnum-Wert, dessen Standardwert adFldDefault ist, der Attribute für das neue Feld angibt. Wenn dieser Wert nicht angegeben wird, enthält das Feld Attribute, die von Type abgeleitet sind.

FieldValue
Optional. Ein Variant-Wert, der den Wert für das neue Feld darstellt. Wenn nicht angegeben, wird das Feld mit einem Nullwert angefügt.

Bemerkungen

Parameters-Auflistung

Sie müssen die Type-Eigenschaft eines Parameter-Objekts festlegen, bevor Sie es an die Parameters-Auflistung anfügen. Wenn Sie einen Datentyp variabler Länge auswählen, müssen Sie auch die Size-Eigenschaft auf einen Wert festlegen, der größer als Null ist.

Wenn Sie selbst Parameter beschreiben, minimiert dies Aufrufe an den Anbieter und verbessert daher die Leistung, wenn Sie gespeicherte Prozeduren oder parametrisierte Abfragen verwenden. Sie müssen allerdings die Eigenschaften der Parameter kennen, die der gespeicherten Prozedur oder parametrisierten Abfrage zugeordnet sind, die Sie aufrufen möchten.

Verwenden Sie die CreateParameter-Methode, um Parameter-Objekte mit den entsprechenden Eigenschafteneinstellungen zu erstellen, und verwenden Sie die Append-Methode, um sie der Parameters-Auflistung hinzuzufügen. Dadurch können Sie Parameterwerte festlegen und zurückgeben, ohne den Anbieter wegen der Parameterinformationen aufrufen zu müssen. Wenn Sie an einen Anbieter schreiben, der keine Parameterinformationen bereitstellt, müssen Sie diese Methode verwenden, um die Parameters-Auflistung manuell aufzufüllen, um Parameter überhaupt verwenden zu können.

Fields-Auflistung

Der FieldValue-Parameter ist nur gültig, wenn ein Field-Objekt zu einem Record-Objekt hinzugefügt wird, nicht zu einem Recordset-Objekt. Mit einem Record-Objekt können Sie gleichzeitig Felder anfügen und Werte bereitstellen. Mit einem Recordset-Objekt müssen Sie Felder erstellen, während das Recordset geschlossen ist, und dann das Recordset öffnen und den Feldern Werte zuweisen.

Hinweis

Für neue Field-Objekte, die an die Fields-Auflistung eines Record-Objekts angefügt wurden, muss die Value-Eigenschaft festgelegt werden, bevor andere Field-Eigenschaften angegeben werden können. Zunächst muss ein bestimmter Wert für die Value-Eigenschaft zugewiesen und Update für die Fields-Auflistung aufgerufen worden sein. Anschließend kann auf andere Eigenschaften wie Type oder Attributes zugegriffen werden. Field-Objekte der folgenden Datentypen (DataTypeEnum) können nicht an die Fields-Auflistung angefügt werden und verursachen einen Fehler: adArray, adChapter, adEmpty, adPropVariant und adUserDefined. Außerdem werden die folgenden Datentypen von ADO nicht unterstützt: adIDispatch, adIUnknown und adIVariant. Bei diesen Typen tritt beim Anfügen kein Fehler auf, aber die Verwendung kann unvorhersehbare Ergebnisse erzeugen, einschließlich Arbeitsspeicherverlusten.

Recordset

Wenn Sie die CursorLocation-Eigenschaft nicht festlegen, bevor Sie die Append-Methode aufrufen, wird CursorLocation automatisch auf adUseClient (einen CursorLocationEnum-Wert) festgelegt, wenn die Open-Methode des Recordset-Objekts aufgerufen wird.

Ein Laufzeitfehler tritt auf, wenn die Append-Methode für die Fields-Auflistung eines geöffneten Recordset oder für ein Recordset aufgerufen wird, dessen ActiveConnection-Eigenschaft festgelegt wurde. Sie können nur Felder an ein Recordset anfügen, das nicht geöffnet ist und noch nicht mit einer Datenquelle verbunden wurde. Dies ist in der Regel der Fall, wenn ein Recordset-Objekt mit der CreateRecordset-Methode erstellt oder einer Objektvariablen zugewiesen wird.

Datensatz

Ein Laufzeitfehler tritt nicht auf, wenn die Append-Methode für die Fields-Auflistung eines geöffneten Record (Datensatzes) aufgerufen wird. Das neue Feld wird der Fields-Auflistung des Record-Objekts hinzugefügt. Wenn der Record von einem Recordset abgeleitet wurde, wird das neue Feld nicht in der Fields-Auflistung des Recordset-Objekts angezeigt.

Ein nicht vorhandenes Feld kann erstellt und an die Fields-Auflistung angefügt werden, indem sie dem Feldobjekt einen Wert zuweisen, als ob es bereits in der Auflistung vorhanden gewesen wäre. Die Zuweisung löst die automatische Erstellung und das Anfügen des Field-Objekts aus, woraufhin die Zuweisung abgeschlossen wird.

Rufen Sie nach dem Anfügen eines Field-Objekts an die Fields-Auflistung eines Record-Objekts die Update-Methode der Fields-Auflistung auf, um die Änderung zu speichern.

Gilt für

Weitere Informationen

Append- und CreateParameter-Methode – Beispiel (VB)
Append- und CreateParameter-Methode – Beispiel (VC++)
CreateParameter-Methode (ADO)
Delete-Methode (ADO-Fields-Collection)
Delete-Methode (ADO-Parameters-Collection)
Delete-Methode (ADO-Recordset)
Update-Methode