Udostępnij przez


Jak kopiowanie masowe danych za pomocą IRowsetFastLoad (OLE DB)

Konsument powiadamia SQLOLEDB zbiorczego kopiowania przez ustawienie właściwość specyficzne dla dostawca SQLOLEDB SSPROP_ENABLEFASTLOAD VARIANT_TRUE jego potrzeby.Z właściwość ustawić urządzenie źródłowe danych, konsument tworzy sesja SQLOLEDB.Nowa sesja umożliwia dostęp klienta do IRowsetFastLoad.

Zakończenie próbki jest dostępna, ilustruje użycie IRowsetFastLoad zbiorczego kopiowania rekordów do tabela. W tym przykładzie 10 rekordów są dodawane do tabela IRFLTable.Należy utworzyć w tabela IRFLTable w bazie danych.

Zakończenie przykładowy kod znajduje się w pliku BulkCopyRecords.cpp.Możesz pobrać próbką z archiwum Pliki do pobrania program SQL Server strona w witrynie MSDN.

W tym przykładzie został opracowany przy użyciu programu Microsoft Visual C++ 2005.

Security noteSecurity Note:

Gdy jest to możliwe, należy używać uwierzytelniania systemu Windows.Jeśli uwierzytelnianie systemu Windows nie jest dostępne, monitu użytkowników o wprowadzenie poświadczenia w czasie wykonywania.Należy unikać przechowywania poświadczenia w pliku.Jeśli muszą przetrwać poświadczenia, należy je z zaszyfrować Win32 crypto API.

Aby kopiowanie masowe dane do tabela programu SQL Server

  1. Ustanów połączenie ze źródłem danych.

  2. zestaw Właściwość SSPROP_ENABLEFASTLOAD do VARIANT_TRUE urządzenie źródłowe danych specyficznych dla dostawca SQLOLEDB.Z tą właściwością zestaw do VARIANT_TRUE, nowo utworzony sesja zezwala na dostęp klienta do IRowsetFastLoad.

  3. Tworzenie sesja żądających IOpenRowset interfejs.

  4. Wywołanie IOpenRowset::OpenRowset Aby otworzyć zestaw wierszy, które obejmuje wszystkie wiersze z tabela (w którym dane są mają zostać skopiowane za pomocą operacji zbiorczego kopiowania).

  5. Wykonaj niezbędne powiązania i utworzyć metoda dostępu przy użyciu IAccessor::CreateAccessor.

  6. Służy do ustawiania buforu pamięci, z którego zostaną skopiowane dane do tabela.

  7. Wywołanie IRowsetFastLoad::InsertRow Aby kopiowanie masowe dane w tabela.