这是我的查询字符串
SELECT
Payment
,Balance
,PatientNo
FROM
[GP_DB].[dbo].[GP]
where GP.GPDate= (SELECT CONVERT(VARCHAR(24),@GPDate,103))
GPDate是日期类型列,而不是DateTime
我传递像这样的参数
cmd_select_treatment.Parameters.AddWithValue(
"@GPDate"
,Convert.ToDateTime(dateTimePicker1.Value));
但发生以下错误
从字符串转换日期和/或时间时转换失败。
答案 0 :(得分:2)
GPDate是日期类型列
如果它是DATE
列并且您的Convert.ToDateTime
来电返回了DateTime
个对象,那么请不要为CAST
打扰自己。
WHERE GP.GPDate = @GPDate
如果dateTimePicker1
可能包含时间成分且您并不关心它,那么只需在使用其值之前将其丢弃:
Convert.ToDateTime(dateTimePicker1.Value).Date
答案 1 :(得分:0)
@var是DateTime select cast(convert(varchar(8),@ var,112)as Date)
答案 2 :(得分:-1)
我认为您需要在日期转换中添加图片子句,例如
to_date('18/01/2014 10:15:20','dd/mm/yyyy hh24:mi:ss');
这应该可以解决你的问题