IBCPSession::BCPControl (ole db)
Bir toplu kopyalama işlemi için seçenekleri ayarlar.
Sözdizimi
HRESULT BCPControl(
int eOption,
void *iValue);
Açıklamalar
The BCPControl method sets various control parameters for bulk-copy operations including the number of errors allowed before canceling a bulk copy, the numbers of the first and last rows to copy from a data file, and the batch size.
Bu yöntem de kullanmak üzere deyim toplu kopyalama verileri dışarı belirtmek için kullanılan SQL Server.Yapabilirsiniz küme eOption BCP_OPTION_HINTS bağımsız ve iValue deyim içeren bir geniş karakter dize işaretçisi için bağımsız değişken.
The BCPControl method sets the member variables of BCP structure to enable the options set by the user.Geçerli seçenekler şunlardır:
Seçenek |
Açıklama |
---|---|
BCP_OPTION_ABORT |
Sürmekte olan toplu kopyalama işlemi durdurur.Arayabileceğiniz BCPControl yöntem ile bir eOption bağımsız değişkeni BCP_OPTION_ABORT başka iş parçacığı parçacığından durdurmak bir çalışan toplu kopyalama işlemi.The iValue argument is ignored. |
BCP_OPTION_BATCH |
toplu iş iş İş başına satır sayısı.Varsayılan değer tüm satırları gösteren 0'dır ve bir tablo ne zaman verileri ayıklanır veya tüm satırları kullanıcı verileri, verilerin kopyalanmasını, dosya SQL Server.1'den küçük bir değer BCP_OPTION_BATCH varsayılana sıfırlar. |
BCP_OPTION_FILECP |
The iValue argument contains the number of the code page for the data file.Kod sayfa 1252 gibi sayı 850 ya aşağıdaki değerlerden birini belirtin:
|
BCP_OPTION_FILEFMT |
Veri dosyası biçimi sürüm numarası.Bu 80 olabilir (SQL Server 2000), 90 (SQL Server 2005), ya da 100.100 varsayılandır ve dosya içinde olduğunu SQL Server 2008 (veya SQL Server 2008 R2) biçimi.Bu verme ve alma sunucu önceki sürüm tarafından desteklenen formatlar verilerinde kullanışlıdır.Örneğin, verileri almak için alınan bir metinden sütun , bir SQL Server 2000 Server'a bir varchar(max) sütun , bir SQL Server 2005 veya daha sonraki sunucu 80 belirlemelisiniz.Benzer şekilde, verileri verirken 80 belirtirseniz, bir varchar(max) sütun, yalnızca metin gibi kaydedilecek sütuns kaydedilir SQL Server 2000 biçimlendirmek ve bir metin içe sütun , bir SQL Server 2000 server. |
BCP_OPTION_FIRST |
İlk satırdaki veriler dosya veya tablo kopyalamak için.Varsayılan değer 1'dir; 1'den küçük bir değer, varsayılan bu seçeneği sıfırlar. |
BCP_OPTION_FIRSTEX |
İşlem dışı bcp için veritabanı ilk satırı belirtir tablo veri dosyasına kopyalayın. İşlemlerinde bcp için veritabanına kopyalamak için veri dosyasının ilk satırı belirtir tablo. The iValue parameter is expected to be the address of a signed 64-bit integer that contains the value.BCPFIRSTEX 2'ye geçen en büyük değer ^ 63-1. |
BCP_OPTION_FMTXML |
Belirtmek için kullanılan biçim dosyası oluşturulan xml biçiminde olması gerekir.Bu varsayılan biçimi dosyaları metin dosyaları olarak kaydedilir ve varsayılan olarak kapalıdır.xml biçim dosyası daha fazla esneklik sağlar, ancak bazı sınırlamalar eklendi.Örneğin, önek ve Sonlandırıcı bir alan için aynı anda eski biçimindeki dosyalarda olanaklı olduğu belirtebileceğiniz değil.
Not
xml biçimi dosyaları, yalnızca desteklenen ne zaman SQL Server araçları ile birlikte yüklü SQL Server yerel istemci.
|
BCP_OPTION_HINTS |
The iValue argument contains a wide character string pointer.dize Gönderilen belirtir ya da SQL Server toplu işleme ipuçlarını veya Transact-SQL deyim dönen bir sonuç küme.Yoksa bir Transact-SQL deyim birden çok işlevi belirtilen sonuç küme, tüm sonuç kümesiilk göz ardı edilir sonra s. |
BCP_OPTION_KEEPIDENTITY |
Zaman iValue bağımsız değişkeni küme true, toplu kopyalama yöntemleri için sağlanan veri değerleri Ekle bu seçenek belirtir SQL Server sütunları tanımlı olan bir kimlik kısıtlaması.Giriş dosyası kimlik sütunlarının değerlerini sağlamanız gerekir.Bu küme ise, yeni kimlik değerleri eklenen satırlar için oluşturulur.Kimlik sütunları için dosyada var olan herhangi bir veri yok sayılır. |
BCP_OPTION_KEEPNULLS |
Boş veri dosyasındaki değerleri null değerlere dönüştürülüp dönüştürülmeyeceğini belirtir SQL Server tablo.Zaman iValue değişkenini true olarak, boş değerler null dönüştürülür SQL Server tablo.Sütun için varsayılan bir değere dönüştürmek boş değerler varsayılır SQL Server bir varsayılan varsa tablo. |
BCP_OPTION_LAST |
Son satır kopyalamak için.Tüm satırlara kopyalamak için varsayılandır.1'den küçük bir değer, varsayılan bu seçeneği sıfırlar. |
BCP_OPTION_LASTEX |
İşlem dışı bcp için veritabanının son satırı belirtir tablo veri dosyasına kopyalayın. İşlemlerinde bcp için veritabanına kopyalamak için veri dosyasının son satırı belirtir tablo. The iValue parameter is expected to be the address of a signed 64-bit integer that contains the value.2 bcplastex için geçirilen en büyük değer olan ^ 63-1. |
BCP_OPTION_MAXERRS |
Toplu kopyalama işlemi önce izin verilen hata sayısını başarısız olur.Varsayılan değer 10'dir.1'den küçük bir değer, varsayılan bu seçeneği sıfırlar.BULK copy en çok 65.535 hataları uygular.Bu seçenek için bir değer seçeneği olan 65.535 sonuçlar büyük küme girişimi 65,535 arasında ayarlayın. |
BCP_OPTION_ROWCOUNT |
Geçerli (veya en son) bcp işlem tarafından etkilenen satırların sayısını verir. |
BCP_OPTION_TEXTFILE |
Veri dosyasının ikili dosyasını değildir, ancak bir metin dosyasıdır.Unicode metin dosyası olup olmadığını veya veri dosyasının ilk 2 bayt Unicode bayt işaretçi denetleyerek değil, bcp algılama yapar. |
BCP_OPTION_UNICODEFILE |
Zaman küme true olarak bu seçeneği giriş dosyasını Unicode dosya biçimini belirtir. |
Bağımsız değişkenler
eOption[de]
Yukarıdaki açıklamalar bölümünde listelenen seçeneklerden birini ayarlayın.iValue[de]
Belirtilen değeri eOption.The iValue argument is an integer value cast to a void pointer to allow for future expansion to 64 bit values.
Dönüş Kodu Değerleri
S_OK
Yöntem başarılı oldu.E_FAIL
A sağlayıcı-belirli bir hata oluştu; ayrıntılı bilgi için kullanma ISQLServerErrorInfo arabirim.E_UNEXPECTED
Beklenmeyen yöntem çağrısı.Örneğin, IBCPSession::BCPInit yöntem, bu işlev çağırmadan önce değil çağrıldı.E_OUTOFMEMORY
Bellek yetersiz hatası.