我在 SQL Server 存储过程中使用 GETDATE()
将日期插入到 SQL Server 数据库表中。
之后我需要实现一个 C# 函数,该函数基于 datetime
输入参数查找日期是否保存在表中。
C# 和 SQL 中的日期时间不同。如何将 C# 日期时间转换为格式为 yyyy-mm-ddT:yy:mm:ss.mmm
的 SQL 日期时间?我需要明确指定 yyyy-mm-ddT:yy:mm:ss.mmm
。
将为所有提议/可能的方式感到高兴。
最佳答案
DateTime
in .Net framework 和 SQL Server (如果是 DateTime 类型字段) 与格式无关。格式仅对显示输出有用。
如果您在 SQL Server 中的字段是 DateTime
类型,那么您可以使用参数化查询从 C# 代码查询它,例如:
public DataTable GetRecords(DateTime dtParameter)
{
DataTable dt = null;
using (SqlConnection conn = new SqlConnection("connection string"))
{
using (SqlCommand cmd = new SqlCommand("SELECT * from yourTable where DateField = @dateparameter"))
{
conn.Open();
cmd.Parameters.AddWithValue("@dateparameter",dtParameter);
SqlDataReader dr = cmd.ExecuteReader();
//...rest of the code
dt.Load(dr);
}
}
return dt;
}
关于c# - C# 中的日期时间与 SQL Server 中的 SQL 和 GETDATE(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21116226/