C#写入Datetime到SQL server

文章目录

    • 运行测试
      • 插入Datetime
    • 相关知识点
      • Datetime转为字符串
      • 字符串转为Datetime

运行测试

插入Datetime

// 连接数据库操作
string connStr = "Data Source=[服务器名];" +
                        "Initial Catalog=[数据库名];" +
                        "User ID =[用户名];" +
                        "Password=[密码]";;
SqlConnection conn = new SqlConnection(connStr);	//设置连接
conn.Open();            //打开数据库
// 执行sql语句操作
string dt = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff");	// 将当下时间转为字符串
string sql =string.Format("insert into logTable(SScan_Time) values('{0}');",dt);	// sql语句,此处注意,时间字符串要加''
SqlCommand cmd = new SqlCommand(sql, conn);		// 创建命令
// 打印操作
int lineAffected = cmd.ExecuteNonQuery();   // 执行命令
Console.WriteLine($"数据插入:{lineAffected}行受到影响!");

易错点:如果sql语句中时间字符串不加' ',就会执行

"insert into logTable(Scan_Time) values(2023-11-17 14:14:43.111);"

然后报错:

“14”附近有语法错误。

改为下述即可执行

insert into logTable(Scan_Time) values('2023-11-17 14:14:43.111');

相关知识点

Datetime转为字符串

string dt = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff");	// 将当下时间转为字符串
Console.WriteLine(dt);

字符串转为Datetime

string dtData = "2023-11-17 07:42:08.716";
string dtFormat = "yyyy-MM-dd HH:mm:ss.fff";
DateTime dt = DateTime.ParseExact(dtData, dtFormat,System.Globalization.CultureInfo.CurrentCulture);
Console.WriteLine(dt);

输出:11/17/2023 07:42:08
官方文档参考。

string dtData = "2023-11-17 07:42:08.716";
DateTime dt = Convert.ToDateTime(dtData);
Console.WriteLine(dt);

输出:11/17/2023 07:42:08
官方文档参考。

你可能感兴趣的:(C#项目,c#,数据库)