关于一个查找时间的问题
其实类似的问题我前几天发过 不过没有解决
只能发个帖子详细地说明下
比较急 请大家帮帮忙
说一下我是想实现在数据库查找是否存在已知一个时间断里的时间
比如已知6:00 到12:00 类型已经转成datetime了
数据表中都是一个时间点比如8:35 9:30 14:50之类的 类型是datetime
try
{
SqlDataReader myreader = cmd.ExecuteReader();
if (myreader.HasRows)
{
Label5.Text = myreader.GetValue(1).ToString();
}
else
Label5.Text = "没有这条纪录 ";
myreader.Close();
}
.......
运行的显示总是“没有这条记录”;
--------------------------------------
我就想可能我的sql语句也错了
ALTER PROCEDURE dbo.SelectStartTime
@Time1 datetime,
@Time2 datetime
AS
select starttime from sys_flight where convert(varchar(5),starttime,14) > @Time1 and convert(varchar(5),starttime,14) <@Time2
RETURN
结果:运行[dbo].[SelectStartTime] ( @Time1 = 8:00, @Time2 = 9:00 ).
starttime
-----------------------
没有行受影响。
(返回 0 行)
@RETURN_VALUE = 0
完成 [dbo].[SelectStartTime] 运行。
运行没有结果
--------------------------------------
然后我在sql查询分析器里面运行
execute selectstarttime @Time1= '8:00 ', @Time2= '9:00 '
运行是有结果的
1899-12-30 08:45:00.000
--------------------------------------
为什么用查询分析器是有结果的 但是在VS2005里面执行存储过程没有结果呢?
请问大家这是什么原因阿?
------解决方案--------------------如果你只取一个数据,使用ExecuteScalar 方法多好啊.
如果使用ExecuteReader就要做循环来取.
------解决方案--------------------execute selectstarttime @Time1= '08:00 ', @Time2= '09:00 '