C# 同步工作站与SQL服务器的时间,设置本机时间

简介: 本文转载:http://www.csframework.com/archive/2/arc-2-20130101-1971.htm C# Code:///  /// 设置本机时间 ///  public class LocalTimeSync{   [DllImport("Kernel32.

本文转载:http://www.csframework.com/archive/2/arc-2-20130101-1971.htm

 

C# Code:

///   <summary>  
///  设置本机时间 
///   </summary>  
public  class LocalTimeSync
{
   [DllImport( " Kernel32.dll ")]
    public  static  extern  bool SetSystemTime( ref SystemTime sysTime);
   
   [DllImport( " Kernel32.dll ")]
    public  static  extern  void GetSystemTime( ref SystemTime sysTime);
   
   [StructLayout(LayoutKind.Sequential)]
    public  struct SystemTime
   {
       public  ushort wYear;
       public  ushort wMonth;
       public  ushort wDayOfWeek;
       public  ushort wDay;
       public  ushort wHour;
       public  ushort wMinute;
       public  ushort wSecond;
       public  ushort wMiliseconds;
   }
    ///   <summary>  
   
///  设置本机时间 
   
///   </summary>  
    public  static  void SyncTime(DateTime currentTime)
   {
      SystemTime sysTime =  new SystemTime();
      sysTime.wYear = Convert.ToUInt16(currentTime.Year);
      sysTime.wMonth = Convert.ToUInt16(currentTime.Month);
      sysTime.wDay = Convert.ToUInt16(currentTime.Day);
      sysTime.wDayOfWeek = Convert.ToUInt16(currentTime.DayOfWeek);
      sysTime.wMinute = Convert.ToUInt16(currentTime.Minute);
      sysTime.wSecond = Convert.ToUInt16(currentTime.Second);
      sysTime.wMiliseconds = Convert.ToUInt16(currentTime.Millisecond);
      
       // 处理北京时间 
       int nBeijingHour = currentTime.Hour -  8;
       if (nBeijingHour <=  0)
      {
         nBeijingHour =  24;
         sysTime.wDay = Convert.ToUInt16(currentTime.Day -  1);
          // sysTime.wDayOfWeek = Convert.ToUInt16(current.DayOfWeek - 1); 
      }
       else
      {
         sysTime.wDay = Convert.ToUInt16(currentTime.Day);
         sysTime.wDayOfWeek = Convert.ToUInt16(currentTime.DayOfWeek);
      }
      sysTime.wHour = Convert.ToUInt16(nBeijingHour);
      
      SetSystemTime( ref sysTime); // 设置本机时间 
   }
}

// 来源:C/S框架网(www.csframework.com) QQ:1980854898





 
C# Code:


///   <summary>  
///  同步服务器时间 
///   </summary>  
public  void SyncServerTime()
{
    string sql =  " SELECT GETDATE() ";
    object o = DataProvider.Instance.ExecuteScalar(Globals.DEF_ATTEND_SYSTEM_DB, sql);
   DateTime dt = ConvertEx.ToDateTimeEx(o);
    // LocalTimeSync.SyncTime(dt); 
   
   
// 比较时间一致性 
    if (ConvertEx.ToCharYYYYMMDDHHMM(DateTime.Now) != ConvertEx.ToCharYYYYMMDDHHMM(dt))
   LocalTimeSync.SyncTime(dt); // 同步服务器的时间 
}

 

目录
相关文章
|
4月前
|
SQL 存储 Unix
Flink SQL 在快手实践问题之设置 Window Offset 以调整窗口划分如何解决
Flink SQL 在快手实践问题之设置 Window Offset 以调整窗口划分如何解决
62 2
|
27天前
|
SQL
开启慢SQL设置long_query_time=0.1为啥会统计的sql却存在小于100毫秒的sql
开启慢SQL设置long_query_time=0.1为啥会统计的sql却存在小于100毫秒的sql
30 1
|
2月前
|
SQL 存储 数据库
SQL部分字段编码设置技巧与方法
在SQL数据库管理中,设置字段的编码对于确保数据的正确存储和检索至关重要
|
2月前
|
SQL 数据库
SQL-serve数据库不能连接本地服务器的解决方案
SQL-serve数据库不能连接本地服务器的解决方案
199 0
|
3月前
|
SQL 安全 Oracle
SQL Server 链接服务器(Linked Servers)
【9月更文挑战第12天】SQL Server 的链接服务器功能强大,可让你在一个实例中访问其他数据源,包括其他 SQL Server 实例、Oracle 数据库等。它支持数据集成、分布式查询和数据同步,无需复制数据。创建链接服务器需在 SQL Server Management Studio 中进行,并配置名称、类型及安全性。使用时需注意权限、性能和安全性问题,确保系统稳定和数据安全。
|
3月前
|
关系型数据库 数据库 PostgreSQL
在C#中获取与设置Windows的字符编码方式
通过以上步骤,你可以在Docker环境下有效地重启PostgreSQL服务。这对于维护数据库健康、应用更新或环境配置更改后确保数据库服务正常运行至关重要。根据你的具体需求和环境设置,选择合适的方法来执行重启操作。
20 0
|
5月前
|
SQL 弹性计算 资源调度
云服务器 ECS产品使用问题之bin/spark-sql --master yarn如何进行集群模式运行
云服务器ECS(Elastic Compute Service)是各大云服务商阿里云提供的一种基础云计算服务,它允许用户租用云端计算资源来部署和运行各种应用程序。以下是一个关于如何使用ECS产品的综合指南。
|
4月前
|
SQL 关系型数据库 MySQL
SQL自动启动设置指南:详细步骤与技巧
在数据库管理中,确保SQL服务能够自动启动对于保持数据服务的连续性和稳定性至关重要
|
4月前
|
SQL 存储 缓存
SQL Server 内存占用较高 - 清除缓存 或 设置内存最大占用值
SQL Server 内存占用较高 - 清除缓存 或 设置内存最大占用值
87 0
|
SQL .NET C#
SQL点滴15—在SQL Server 2008中调用C#程序
原文:SQL点滴15—在SQL Server 2008中调用C#程序    T-SQL的在执行普通的查询的时候是很高效的,但是在执行循环,判断这样的语句的时候效率就不那么的高了。这时可以借助CLR了,我们可以在SQL Server 2008中扩展C#程序来完成循环等过程式的查询,或者其他SQL不便实现的功能。
906 0
下一篇
无影云桌面