c#取出数据库表格中的日期与当前日期相减求天数如何写代码?

来源:百度知道 编辑:UC知道 时间:2024/05/14 16:09:06
计算方法会,就是不知道如何取出数据库中的数据然后怎么去与当前的时间相减。数据库连接是这样的。往下就不会了。 string sn = this.TextBox1.Text;
SqlConnection conn = new SqlConnection("server=localhost;database=equip-inf;user=equ;password=equ");
string sql = "select 发放日期 from equip where 主机编号='" + sn + "'";
SqlDataAdapter da = new SqlDataAdapter(sql, conn);
DataSet ds = new DataSet();
da.Fill(ds);

取数据:
//从DataSet中得到日期的值(类型不知道所以用object)
object obj = ds.Tables[0].rows[0]["发放日期"];
//转换成日期
DateTime d = Convert.ToDateTime(obj);
比较:
TimeSpan ts = DateTime.Now - d;

日期相减的结果是一个TimeSpan,可以用Days或TotalDays得到想要的数
你想要的应该是TotalDays,有小数,自己看是不是要进一位

declare @i int
set @i= datediff(day,'2008-1-1',getdate()) --2008-1-1到今天相隔的天数
print @i

那就接着你那个这么写:
DateTime dt = ds.Tables[0].Rows[0][0];//获取发放日期
int num = DateTime.Now.Day - dt.Day;

楼上的方法很好,值得一试

TimeSpan 类 自己慢慢看