SQL 从字符串向 datetime 转换时失败。

binadan 2010-09-07 11:19:35

select count(*) from FRP_Bill
where TimeSent >= '2010-8-7 00:00:00.000' and TimeSent <'2010-9-8 00:00:00.000'


在sql里面可以运行,用参数将时间或者时间字符串传入也可以,
但是直接用字符串连接然后再ExcuteNonQuery的时候便报异常:
从字符串向 datetime 转换时失败。

strWhere+= " TimeSent >= '" + searchModel.StrDateTimeBegin + "' and TimeSent <'" + searchModel.StrDateTimeEnd1 + "' " ...;

连接后产生的sql字符串便是上面贴出来的 请问这是什么原因?
sqlServer2005里面的查询分析器直接执行的sql语句 和 C#内传给SQLServer执行的sql语句两者的区别在何处呢?
为什么传参数又不会出错?
...全文
913 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
浪子-无悔 2010-09-07
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wuyq11 的回复:]
command.Parameters.Add("@TimeSent", SqlDbType.DateTime, 8);
command.Parameters["@seldate"].Value =searchModel.StrDateTimeBegin;
TimeSent >= @TimeSent
[/Quote]
正解。。。
binadan 2010-09-07
  • 打赏
  • 举报
回复
补充:searchModel.StrDateTimeBegin内的数据就是ToString("yyyy-MM-dd HH:mm:ss:fff") 后的结果
2 3 L的方法都不行

1L的 参数是可以用,我也知道 ,不过还是谢谢。
CODE163 2010-09-07
  • 打赏
  • 举报
回复
1楼正解
辰爸 2010-09-07
  • 打赏
  • 举报
回复
searchModel.StrDateTimeBegin.ToString("yyyy-MM-dd HH:mm:ss:fff")
q107770540 2010-09-07
  • 打赏
  • 举报
回复
strWhere+= " TimeSent >= '" + searchModel.StrDateTimeBegin + "' and TimeSent <'" + searchModel.StrDateTimeEnd1 + "' " ...;
========
strWhere+= " TimeSent >= '" + searchModel.StrDateTimeBegin.ToString("yyyy-MM-dd HH:mm:ss:fff") + "' and TimeSent <'" + searchModel.StrDateTimeEnd1.ToString("yyyy-MM-dd HH:mm:ss:fff") + "' " ...;
wuyq11 2010-09-07
  • 打赏
  • 举报
回复
command.Parameters.Add("@TimeSent", SqlDbType.DateTime, 8);
command.Parameters["@seldate"].Value =searchModel.StrDateTimeBegin;
TimeSent >= @TimeSent
heaventohell17 2010-09-07
  • 打赏
  • 举报
回复
帮顶。。。
编码问题??
binadan 2010-09-07
  • 打赏
  • 举报
回复
用字符串为何不行呢?参数确实行的 不用重复了。。。
异常的sql语句直接复制到sqlserver中却能执行 ,这是为什么呢?

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧