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
官方文档参考。