Я написал хранимую процедуру SQL Server, которая включает параметр DateTime
. Этот параметр может быть нулевым или содержать допустимое значение даты.Вставить NULL DateTime с хранимой процедурой SQL Server из C#
Так определение моей переменной в моей процедуре ниже:
@piPurchase_Date DATETIME = NULL
От C# добавить параметр следующим образом:
SqlParameter parameter = new SqlParameter("@piPurchase_Date", SqlDbType.DateTime);
parameter.Value=datePurchaseIssueDate.Checked ? datePurchaseIssueDate.Value : SqlDateTime.Null;
Пока все вроде нормально, но когда я называю Update метод на DataAdaptor Я получаю следующую ошибку:
Failed to convert parameter value from a SqlDateTime to a DateTime.
Любые идеи?
Я использую SQL Server 2008 и C# 4.0
Спасибо заранее
Я думаю, вы можете использовать 'String.Empty' или' '' ', и это преобразуется в значение' NULL' 'DateTime'. – MoonKnight
Вы только что пробовали передать в null 'paramter.Value = datePurchaseIssueDate.Checked? (DateTime?) DatePurchaseIssueDate.Value: null; ' –
Возможно, вы захотите заменить секцию' null' на 'DbNull.Value' –