日期:2014-05-17  浏览次数:21296 次

如何将数据定时保存到数据库
我实时读取标签的ID,及温度、湿度信息,想将标签ID、温度、湿度、读取时间每隔10分钟保存到数据库中一次,改如何编程?用的是C#语言编写WinForm应用,使用的是SQL Server数据库。
如果用到Timer控件,改如何具体编程呢?
定时保存数据 SQL?Server

------解决方案--------------------

添加一个局部变量:
private DateTime LastTime;

添加定时器,设定Interval比如说为1000。
Tick中添加代码:
if (new TimeSpan(DateTime.Now.Tick - LastTime.Tick).Seconds > 600)
{
    ...
    LastTime = DateTime.Now;
}
------解决方案--------------------

1. Form上面加一个定时器,设置每10分钟触发一次,触发时插入数据到数据库
2. 页面上的标签ID、及温度、湿度等信息,应该设置每分钟更新一次,保证每次插入数据库中的数据都是最新的


------解决方案--------------------
引用:
添加一个局部变量:
private DateTime LastTime;

添加定时器,设定Interval比如说为1000。
Tick中添加代码:
if (new TimeSpan(DateTime.Now.Tick - LastTime.Tick).Seconds > 600)
{
    ...
    LastTime = DateTime.Now;
}


同意
------解决方案--------------------
1,用timer定时器,每10分钟执行一次
2、读取读取标签的ID,及温度、湿度信息
3、数据插入数据库

使用System.Timers.Timer类
System.Timers.Timer t = new System.Timers.Timer(600000);
t.Elapsed += new System.Timers.ElapsedEventHandler(Do_Elapsed);
t.AutoReset = true;
t.Enabled = true;


      private static void Do_Elapsed(object sender, ElapsedEventArgs e)
       {
         Tosql();
       }

[code=csharp] 
 
 puclic void   Tosql()
{
       string strCon = "Data Source=192.168.1.5;Initial Catalog=data;User ID=sa;Pwd=sa";          
           string sql = "INSERT INTO table([ID],温度,湿度)" +"VALUES('" + ID + "'" +",'" + 温度+ "'" +",'" + 湿度 + "')" ;   
              using (SqlConnection sqlconn = new SqlConnection(strCon))   
              {