Freigeben über


IBCPSession::BCPColumns (OLE DB)

Gilt für:SQL ServerAzure SQL-DatenbankAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

OLE DB-Treiber herunterladen

Legt die Anzahl von Feldern fest, die an die Spalten einer SQL Server -Tabelle gebunden werden sollen.

Syntax

  
HRESULT BCPColumns(   
      DBCOUNTITEM nColumns);  

Bemerkungen

Intern wird IBCPSession::BCPColFmt aufgerufen, um die Standardwerte für Felddaten festzulegen. Diese Standardwerte werden aus den SQL Server-Spalteninformationen abgerufen, die der Anbieter intern abruft, wenn der Tabellenname über IBCPSession::BCPInit angegeben wird.

Hinweis

Diese Methode kann erst nach dem Aufruf von BCPInit mit einem gültigen Dateinamen aufgerufen werden.

Sie sollten diese Methode nur aufrufen, wenn Sie ein Benutzerdateiformat verwenden möchten, das sich vom Standardformat unterscheidet. Weitere Informationen mit einer Beschreibung des Standardformats für Benutzerdateien finden Sie unter der BCPInit -Methode.

Nach dem Aufruf der BCPColumns -Methode müssen Sie für alle Spalten in der Benutzerdatei die BCPColFmt -Methode aufrufen, um das benutzerdefinierte Dateiformat vollständig zu definieren.

Argumente

nColumns[in]
Die Gesamtzahl der Felder in der Benutzerdatei. Auch wenn Sie das Massenkopieren von Daten aus der Benutzerdatei in eine SQL Server-Tabelle vorbereiten und nicht alle Felder in der Benutzerdatei kopieren möchten, müssen Sie das nColumns -Argument auf die Gesamtzahl der Benutzerdateifelder festlegen. Die übersprungenen Felder können dann durch BCPColFmtangegeben werden.

Rückgabecodewerte

S_OK
Die Methode wurde erfolgreich ausgeführt.

E_FAIL
Ein anbieterspezifischer Fehler ist aufgetreten. Ausführliche Informationen erhalten Sie über die ISQLServerErrorInfo-Schnittstelle.

E_UNEXPECTED
Die Methode wurde unerwartet aufgerufen. Die BCPInit -Methode wurde beispielsweise erst nach dem Aufruf dieser Methode aufgerufen. Tritt auch auf, wenn diese Methode mehr als einmal für einen Massenkopiervorgang aufgerufen wird.

E_OUTOFMEMORY
Fehler aufgrund nicht genügenden Arbeitsspeichers

Weitere Informationen

IBCPSession (OLE DB)
Durchführen von Massenkopiervorgängen