DBNull.Value
değerini değer olarak girerseniz, ADO.NET parametrenin ne tür olması gerektiğini belirleyemez. Bir dize veya bir tamsayı değeri belirtirseniz, SQL parametresinin türü sağlanan değerden türetilebilir - ancak ne tür DBNull.Value
dönüşmeli? Bir NULL değeri geçerken
, açıkça, SqlDbType
kendinizi belirtmek gerekir:
Dim photoParam As New SqlParameter("@photo", SqlDbType.Image)
photoParam.Value = DBNull.Value
cmd.Parameters.Add(photoParam)
cmd.ExecuteNonQuery()
çalışması gerekir Yani, umarım!
Güncelleme: C# aynı şey olacaktır:
SqlParameter photoParam = new SqlParameter("@photo", SqlDbType.Image);
photoParam.Value = DBNull.Value;
cmd.Parameters.Add(photoParam);
cmd.ExecuteNonQuery();
bir, ücretsiz, VB.NET-to-C# converter out there çok faydalı harika var - kullanın!
Bunu C# ile nasıl yapılır? – Selase
çalışmadı. Varchar'dan numeric'e dönüştürme hatası. – moldovanu
C# da 1 satırda yazılabilir: cmd.Parameters.Add (yeni SqlParameter ("fotoğraf", SqlDbType.Image) {Değer = DBNull.Value}); – Johann