Verwalten von Text und Bildspalten

Die SQL Server-Datentypen text, ntext und image (auch Long-Daten genannt) sind Zeichen- bzw. binäre Zeichenfolgen-Datentypen, die Datenwerte enthalten können, die für die char-Spalte, varchar-Spalte, binary-Spalte oder varbinary-Spalte zu groß sind. Der SQL Servertext-Datentyp ist dem ODBC-Datentyp SQL_LONGVARCHAR zugeordnet, der ntext-Datentyp SQL_WLONGVARCHAR und der image-Datentyp SQL_LONGVARBINARY. Einige Datenelemente, wie z. B. lange Dokumente oder große Bitmaps, sind möglicherweise zu groß, um im Speicher gespeichert zu werden. Um lange Daten in Sequenzen aus SQL Server abzurufen, ermöglicht es der SQL Server Native Client ODBC-Treiber einer Anwendung, SQLGetData aufzurufen. Um lange Daten in Teilsequenzen zu senden, kann die Anwendung SQLPutData aufrufen. Parameter, für die Daten zur Ausführungszeit gesendet werden, werden als Data-at-Execution-Parameter bezeichnet.

Eine Anwendung kann eigentlich jeden Datentyp (nicht nur Long-Daten) mit SQLPutData bzw. SQLGetData schreiben und abrufen; allerdings können nur Daten vom character-Typ und binary-Typ in Teilsequenzen gesendet bzw. abgerufen werden. Wenn die Daten jedoch klein genug sind, um in einen einzelnen Puffer zu passen, gibt es in der Regel keinen Grund, SQLPutData oder SQLGetData zu verwenden. Es ist viel leichter, den einzelnen Puffer an den Parameter oder die Spalte zu binden.