SqlDataReader dc;
SqlConnection connn = new SqlConnection("Data Source=bb-pcn;User ID=pcn;Password=pcn168;database=TestLog");
SqlCommand upcmd = new SqlCommand("Select * from User_Temp where datediff(mm,UpTime,getdate())<=10",connn);
try
{
connn.Open();
dc=upcmd.ExecuteReader();
if (dc.Read())
{
Response.Redirect("Message.aspx"); }
else
{
this.Response.Write("<script>alert(\"此帳號已經在使用!\");</script>");
}
}
finally
{
connn.Close();
}以上代碼是實現在User_Temp表中查找出時間值(UpTime)與當前時間對比,當相差大於10分鐘時允許執行 Response.Redirect("Message.aspx");,當相差小於10分鐘時就alert(\"此帳號已經在使用!\");。為什麼我執行的時候時間 差小於10分鐘還是可以執行Response.Redirect("Message.aspx");呢?
數據庫為SQL2000
SqlConnection connn = new SqlConnection("Data Source=bb-pcn;User ID=pcn;Password=pcn168;database=TestLog");
SqlCommand upcmd = new SqlCommand("Select * from User_Temp where datediff(mm,UpTime,getdate())<=10",connn);
try
{
connn.Open();
dc=upcmd.ExecuteReader();
if (dc.Read())
{
Response.Redirect("Message.aspx"); }
else
{
this.Response.Write("<script>alert(\"此帳號已經在使用!\");</script>");
}
}
finally
{
connn.Close();
}以上代碼是實現在User_Temp表中查找出時間值(UpTime)與當前時間對比,當相差大於10分鐘時允許執行 Response.Redirect("Message.aspx");,當相差小於10分鐘時就alert(\"此帳號已經在使用!\");。為什麼我執行的時候時間 差小於10分鐘還是可以執行Response.Redirect("Message.aspx");呢?
數據庫為SQL2000
如果相差還是小於10分鐘的話就不能執行Message.aspx
这样试试看。