Udostępnij za pośrednictwem


SQLBindCol

Ogólną zasadą należy wziąć pod uwagę wpływ przy użyciu SQLBindCol powoduje konwersję danych.Konwersje wiązanie są procesy klient tak, na przykład odczytywania wartości zmiennoprzecinkowych powiązany znak kolumna powoduje sterownika lokalnie wykonać konwersji LANE do znaku, gdy pobieranych wierszy.The Transact-SQL CONVERT funkcja can be used to place the cost of data conversion on the server.

Wystąpienie SQL Server może zwracać wiele zestawów wyników wiersze na wykonanie jednej instrukcja. Każdy zestaw wyników musi być powiązana oddzielnie.Aby uzyskać więcej informacji na temat wiązanie dla wielu zestawów wyników Zobacz SQLMoreResults.

Projektant może powiązać kolumny SQL Server-C danych typów za pomocą Element TargetType value SQL_C_BINARY. Powiązane kolumny SQL Server-określone typy nie są przenośne. Zdefiniowane SQL Server-określone typy danych ODBC C są zgodne z definicji typu dla biblioteki DB, a deweloperzy biblioteki DB, przenoszenia aplikacji warto skorzystać z tej funkcji.

Obcięcie danych raportowania jest procesem kosztowne dla SQL Server Macierzysty sterownik ODBC klient. Można uniknąć obcięcia poprzez zapewnienie, że wszystkie bufory dane powiązane są wystarczająco szerokie, aby dane były zwracane.Danych znakowych szerokości powinny zawierać miejsca terminator ciąg, gdy używane jest domyślne zachowanie sterownika ciąg zakończony.For example, binding a SQL Serverchar(5) column to an array of five characters results in truncation for every value fetched.wiązanie tej samej kolumnie tablicy, z sześciu znaków pozwala uniknąć obcinania dostarczając elementu znaków, w którym będą przechowywane wartości null terminator.SQLGetData umożliwia efektywne pobieranie długich znaków i dane binarne bez obcinania.

Duża wartość danych typów, jeżeli użytkownik Podany bufor jest zbyt mały, aby pomieścić całą wartość kolumna SQL_SUCCESS_WITH_INFO zwracany jest oraz “ ciąg danych; prawostronne ” ostrzeżenie. The StrLen_or_IndPtr argument will contain the number of chars/bytes stored in the buffer.

Obsługa SQLBindCol rozszerzony Data i godzina funkcje

Wynik kolumna wartości typu Data/godzina są konwertowane zgodnie z opisem w Podczas konwersji z SQL do C. Należy zauważyć, że do pobierania czas i datetimeoffset kolumn jako odpowiednie struktury)SQL_SS_TIME2_STRUCT i SQL_SS_TIMESTAMPOFFSET_STRUCT), TargetType musi być określona jako SQL_C_DEFAULT lub SQL_C_BINARY.

Aby uzyskać więcej informacji zobacz Data / czas ulepszenia (ODBC).

Obsługa SQLBindCol duże UDTs CLR

SQLBindCol obsługuje dużą CLR typów zdefiniowanych przez użytkownika (UDTs).Aby uzyskać więcej informacji zobaczDuże CLR typy zdefiniowane przez użytkownika (ODBC).