Aracılığıyla paylaş


JetSetColumns İşlevi

Şunlar için geçerlidir: Windows | Windows Server

JetSetColumns İşlevi

JetSetColumns işlevi JetSetColumn'a benzer ancak uygulamanın tek bir işlemde birden çok sütun değeri ayarlamasına izin verir. Ayarlanacak sütun değerleri kümesini açıklamak ve ayarlanacak her sütun değeri için giriş arabelleklerini açıklamak için bir JET_SETCOLUMN yapıları dizisi kullanılır.

    JET_ERR JET_API JetSetColumns(
      __in          JET_SESID sesid,
      __in          JET_TABLEID tableid,
      __in_out_opt  JET_SETCOLUMN* psetcolumn,
      __in          unsigned long csetcolumn
    );

Parametreler

sesid

Bu çağrı için kullanılacak oturum.

tableid

Bu çağrı için kullanılacak imleç.

psetcolumn

Bir veya daha fazla JET_SETCOLUMN yapıdan oluşan bir diziye yönelik bir işaretçi. Her yapı, ayarlanacağı sütun değerinin ve ayarlanacağı sütun verilerinin nereden alınacağıyla ilgili açıklamalar içerir.

csetcolumn

psetcolumn tarafından verilen dizideki JET_SETCOLUMN yapılarının sayısı.

Dönüş Değeri

Bu işlev, aşağıdaki dönüş kodlarından biriyle JET_ERR veri türünü döndürür. Olası ESE hataları hakkında daha fazla bilgi için bkz. Genişletilebilir Depolama Altyapısı Hataları ve Hata İşleme Parametreleri.

İade kodu

Açıklama

JET_errBadColumnId

Verilen sütun kimliği, sütun kimliğinin yasal sınırlarının dışındadır.

JET_errClientRequestToStopJetService

Oturumla ilişkili örnekteki tüm etkinlik JetStopService çağrısının sonucu olarak sona erdiğinden işlemi tamamlamak mümkün değildir.

JET_errColumnIllegalNull

JET_errNullInvalid gibi.

JET_errColumnNotFound

Verilen sütun kimliği tarafından açıklanan sütun tabloda yok.

JET_errColumnNotUpdatable

Ekleme kopyalama silme özgün güncelleştirme işlemi sırasında uzun bir değeri güncelleştirmek için geçersiz bir girişimde bulunuldu.

JET_errColumnTooBig

Giriş arabelleğinde verilen sütun değeri verileri, sabit uzunlukta bir sütun için doğal veya sabit uzunlukta metin veya ikili sütunlar için yapılandırılmış boyut sınırlamasını aşıyor. Bu hata, uzun bir sütun için 1024 bayttan fazla veri geçirilirken ve JET_bitSetIntrinsicLV bayrağı ayarlanırken de döndürülür.

JET_errÖrnekKullanılamıyor

Oturumla ilişkilendirilmiş örnek, bu verilerin bütünlüğünü korumak için tüm verilere erişimin iptal edilmesi gereken önemli bir hatayla karşılaştığından işlemi tamamlamak mümkün değildir. Bu hata yalnızca Windows XP ve sonraki sürümler tarafından döndürülür.

JET_errInvalidBufferSize

Verilen sütun değeri veri boyutu, sabit uzunluktaki veri türü için doğal olan değerle eşleşmiyor.

JET_errInvalidColumnType

Ekleme veya güncelleştirme işlemi sırasında otomatik artırma sütununu güncelleştirme ya da değiştirme işlemi sırasında sürüm sütununu güncelleştirme amacıyla geçersiz bir girişimde bulunuldu.

JET_errInvalidgrbit

Sağlanan seçenekler bilinmiyor veya bilinen bit ayarlarının geçersiz bir birleşimi.

JET_errInvalidParameter

Verilen psetinfo-cbStruct>, JET_SETINFO yapısı için geçerli bir boyut değil.

JET_errMultiValuedDuplicate

Sütun ayarlama işlemi yinelenen bir değer oluşturmaya çalıştı ve JET_bitSetUniqueMultiValues veya JET_bitSetUniqueNormalizedMultiValues belirtti.

JET_errNotInitialized

Oturumla ilişkili örnek henüz başlatılmadığından işlemi tamamlamak mümkün değildir.

JET_errNotInTransaction

Çağrı oturumu bir işlemde olmadığında uzun bir sütun değerini güncelleştirmek için geçersiz bir girişimde bulunuldu.

JET_errNullInvalid

NULL olmayan bir sütunu NULL olarak ayarlamak için geçersiz bir girişimde bulunuldu.

JET_errRecordTooBig

Kaydın sayfa boyutuyla ilgili boyut sınırlamasını aşmasına neden olacağından sütun değeri giriş arabelleğindeki değere ayarlanamadı. JET_coltypLongText veya JET_coltypLongBinary türündeki sütunlar, kalan kayıt verilerinden ayrı olarak depolanabilir. Ancak, diğer sütunlar kayıtla birlikte depolanmalıdır ve kayıt boyutu sınırlamasının aşılmasına neden olabilir. Uzun sütunlar bile bağlantı olarak kayıt içinde 5 bayt alan gerektirir ve bu da JET_errRecordTooBig döndürülmesine neden olabilir.

JET_errRestoreInProgress

Oturumla ilişkili örnekte bir geri yükleme işlemi devam ettiğinden işlemi tamamlamak mümkün değildir.

JET_errSessionSharingViolation

Aynı oturum aynı anda birden fazla iş parçacığı için kullanılamaz. Bu hata yalnızca Windows XP ve sonraki sürümler tarafından döndürülür.

JET_errTermInProgress

Oturumla ilişkili örnek kapatıldığı için işlemi tamamlamak mümkün değildir.

JET_errUpdateNotPrepared

İmleç şu anda yeni kayıt ekleme veya var olan bir kaydı güncelleştirme sürecinde değildir.

JET_wrnColumnMaxTruncated

Giriş arabelleğindeki sütun değeri, değişken uzunluğu sütunu için yapılandırılan uzunluk üst sınırını aştı ve kesildi.

Başarılı olduğunda, psetcolumns içinde açıklanan her sütun için, sütun değerinin istenen bölümü giriş arabelleğinden kopyalanan verilerle ayarlanır. Sütun veri kümesi, değişken uzunluk sütunu için belirtilen uzunluk üst sınırını aştıysa kesilmiş olabilir.

Hata durumunda, imleç konumu değiştirilmeden bırakılır ve kopyalama arabelleğinde sütun değeri verileri güncelleştirilmez.

Açıklamalar

Tek bir küme sütunu işlemi hata döndürürse , JetSetColumns işleminin tamamı hata döndürür. Uyarılar, genel olarak psetcolumns-error> içinde döndürülür ve bu işlevden döndürülen kodda döndürülür. Ancak, son sütun kümesinde bir uyarı varsa, bu uyarı JetSetColumns'un kendisinden döndürülür.

Gereksinimler

Gereksinim Değer

Müşteri

Windows Vista, Windows XP veya Windows 2000 Professional gerektirir.

Sunucu

Windows Server 2008, Windows Server 2003 veya Windows 2000 Server gerektirir.

Üstbilgi

Esent.h.'de bildirildi.

Kütüphane

ESENT.lib kullanın.

DLL

ESENT.dllgerektirir.

Ayrıca Bkz.

JET_COLTYP
JET_ERR
JET_SESID
JET_TABLEID
JET_SETCOLUMN
jetretrievecolumns
jetsetcolumn