从C#.Net中的SQL Datetime字段中提取日期的最佳方法是什么?
答案 0 :(得分:0)
使用DataReader有以下几种方法:
reader.GetDateTime(ColumnNumber)
(DateTime)reader[ColumnNumber]
Convert.ToDateTime(reader[ColumnName])
答案 1 :(得分:0)
SqlCommand cmd = new SqlCommand("SELECT BeginDate FROM table_name ");
DateTime beginDate = (DateTime)cmd.ExecuteScalar();
答案 2 :(得分:0)
如果您没有使用自动翻译日期时间格式的ORM映射器/框架,基于数据库服务器的配置,我将假设您尝试手动执行此操作。还假设您正在使用SQL Server。
它不理想,但更好的是确保您以已知格式从数据库中获取日期时间(您的数据库服务器可能配置为您的Web / app服务器的不同语言环境 - 无论出于何种原因)
查看this article的SQL转换功能:
CONVERT(data_type,expression,date Format style)
美国mm / dd / yy - 选择转换(varchar,getdate(),1)
ANSI yy.mm.dd - 选择convert(varchar,getdate(),2)
英国/法国dd / mm / yy - 选择转换(varchar,getdate(),3)
......等等。
一旦获得了查询数据,请使用转换静态类:
Convert.ToDateTime(reader["DateColumn"])