部分程序如下:
DateTime ntime = DateTime.Today.AddHours( DateTime.Now.Hour );
string time=ntime.ToString();
我用MessageBox.Show(time)查看time的值,为2007-08-15 13:00:00,没有错。
但是下面这条语句
string commandText="select count(*) from table where Convert(Varchar, 日期时间, 120) = 'time' and 区站号 = '56038'";
程序结果就不对了,是不是由于Varchar和string不能比较啊?但是我在time上加了单引号啊。
如果我把'time'改为'2007-08-15 13:00:00',那么程序结果就对了。
各位前辈不吝赐教啊,谢谢^_^
DateTime ntime = DateTime.Today.AddHours( DateTime.Now.Hour );
string time=ntime.ToString();
我用MessageBox.Show(time)查看time的值,为2007-08-15 13:00:00,没有错。
但是下面这条语句
string commandText="select count(*) from table where Convert(Varchar, 日期时间, 120) = 'time' and 区站号 = '56038'";
程序结果就不对了,是不是由于Varchar和string不能比较啊?但是我在time上加了单引号啊。
如果我把'time'改为'2007-08-15 13:00:00',那么程序结果就对了。
各位前辈不吝赐教啊,谢谢^_^
而不是和time变量的值进行比较,应按照楼上的写法来写
否则
你比较的只是
time=2007-08-15 13:00:00
当然不等
Convert(Varchar, 日期时间, 120) = "+time; 这样也行
string commandText="select count(*) from table where Convert(Varchar, 日期时间, 120) = '"+time+"' and 区站号 = '56038'";
和
string commandText="select count(*) from table where Convert(Varchar, 日期时间, 120) = '+time+' and 区站号 = '56038'";
程序结果都是错的,但是如果我把'time'改为'2007-08-15 13:00:00',那么程序结果就对了。
各位前辈指点啊^_^谢谢了。
string commandText="select count(*) from table where Convert(Varchar, 日期时间, 120) = "+time+" and 区站号 = '56038'";
也不行:(