Aracılığıyla paylaş


SQLPutData

Kullanırken aşağıdaki sınırlamalar SQLPutDatadaha çok 65.535 bayt veri göndermek için (için SQL Serversürüm 4.21a) ya da 400 kb veri (SQL Server sürüm 6.0 ve üstü) için bir sql_longvarchar (text), sql_wlongvarchar (ntext) veya SQL_LONGVARBINARY (image) sütun:

  • Başvurulan parametresi olabilir insert_valueINSERT deyimi.

  • Başvurulan parametresi olabilir bir expressionbir update deyimi set yan tümcesinde.

Bir dizi iptal SQLPutDataçağrıları veri blokları çalıştıran bir sunucuya sağlayan SQL Server6.5 veya önceki bir sürümü kullanarak sütunun değeri bir kısmi güncelleştirme neden. text, ntext, Veya imageolarak sütun zaman başvuruda SQLCanceldenilen bir ara tutucu değerine ayarlanır.

[!NOT]

SQL ServerYerel istemci odbc sürücüsü bağlanmayı desteklemiyor SQL Server6.5 ve önceki sürümü.

Tanılama

Bir SQL Serveryerel istemci belirli sqlstate içinSQLPutData:

SQLSTATE

Hata

Açıklama

22026

Dize verileri, uzunluk uyumsuzluğu

Gönderilen bayt cinsinden veri uzunluğu bir uygulama tarafından örneğin, sql_len_data_at_exec ile belirtilmişse (n) nerede n0, uygulama tarafından verilen bayt sayısı büyüktür SQLPutDataBelirtilen uzunluk eşleşmesi gerekir.

SQLPutData ve tablo Valued Parametreler

SQLPutDatabir uygulama tarafından tablo değerli parametrelerle değişken satır bağlama kullanıldığında kullanılır. StrLen_Or_IndParametresi gösterir sonraki satır veya satırları tablo değerli parametre veri veri toplamak sürücünün hazır olduğunu ya da daha fazla satır kullanılabilir:

  • 0'dan büyük bir değer sonraki satır değerleri kümesini kullanılabilir olduğunu gösterir.

  • 0 Değeri, gönderilmek üzere daha fazla satır olduğunu gösterir.

  • 0'den küçük olan herhangi bir değer bir hatadır ve tanılama kaydı SQLState HY090 ve edilemiyor "Geçersiz dize veya arabellek uzunluğu" ile günlüğe kaydedilmesini sonuçlanır.

DataPtrParametresi yok sayılır, ancak bir boş olmayan değere ayarlanmalıdır. Daha fazla bilgi için değişken tvp satır bağlamasında bölümüne bakın Bağlama ve veri tablosu Valued parametreler ve sütun değerleri Aktarım.

Eğer StrLen_Or_Indayarlamak veya bir sayı 0 ile SQL_PARAMSET_SIZE arasında herhangi bir değere sahip (yani ColumnSizeparametresi SQLBindParameter), bu bir hatadır. SQLPutData sql_error dönmek bu hata neden: sqlstate HY090, = "Geçersiz dize veya arabellek uzunluğu".

Tablo değerli parametreleri hakkında daha fazla bilgi için bkz: Tablo Valued Parametreler (odbc).

Gelişmiş tarih ve saat özellikleri için SQLPutData desteği

Tarih ve saat türleri parametre değerlerini açıklandığı şekilde dönüştürülür Dönüştürmeleri c sql.

Daha fazla bilgi için, bkz. Tarih/Saat (odbc) geliştirmeleri.

Büyük clr UDTs SQLPutData destek

SQLPutData büyük clr kullanıcı tanımlı türler (UDTs) destekler. Daha fazla bilgi için, bkz. Büyük clr kullanıcı tanımlı türler (odbc).

Ayrıca bkz.

Kavramlar

odbc API uygulama ayrıntıları

Diğer Kaynaklar

SQLPutData işlev