c# - SqlDatareader GetValue 根据系统日期格式返回日期值

标签 c# .net sql-server

您好,我正在使用 SqlDatareader 从表中读取值,问题是它总是根据机器日期格式设置格式化该值。

例如源表中的原始日期格式保存为 年/月/日

当我在日期设置为 MM/dd/YY 的计算机中使用 SqlDatareader.GetValue 时 它会自动转换为该格式

是否有办法以完整的原始日期格式检索日期值?

谢谢

最佳答案

没有“原始日期格式”,日期在内部保留为数字,而不是字符串。

在 SQL 查询中,您可以选择输出格式

CONVERT(varchar(30), theColumn, nnn)

其中“nnn”是此处列出的常见日期格式之一:MSDN

我个人觉得该页面令人困惑,因此另一个(更有用的)页面在这里:SQL Server Helper 。从该页面:

CONVERT(VARCHAR(20), GETDATE(), 100) 

将返回“2005 年 1 月 1 日下午 1:29”

关于c# - SqlDatareader GetValue 根据系统日期格式返回日期值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3801110/

相关文章:

c# - 当笔记本电脑上正在运行另一个程序时,如何将 C# WPF 输出分配到电视屏幕

c# - Song.fromURI() 抛出异常?

.net - wpf datagrid rowdetail 被截断

c# - 数据表Select语句问题

c# - IIS Express 使用 CLI 信任自签名 SSL 证书

.NET Standard 2.0 NuGet 包生成

c# - 自托管webapi时如何设置http请求队列长度?

sql-server - 从 1 列计算时间

sql-server - 连接到在并行 VM 中运行的 SQLServer

sql-server - SQL 服务器 : view column datatype does not change when underlying table datatype is changed?