0

我正在调用 SQL 选择语句并在数据网格中显示结果。一切正常,除了在 SQL 中 order_date 列显示为“2004-01-30 09:35:52.000”,而我的 DataGrid 中的列显示为“1/30/2004 9:35 AM”。主要问题是我失去了“秒”(本例中为 52)。我需要秒值。作为次要问题,我想知道它是如何工作的,以便我可以格式化日期/时间在我的 DataGrid 中的显示方式。

我正在测试的小 C# 程序的完整范围如下。很简单..而且我不认为我以任何方式明确定义日期/时间格式..

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace Test_to_Get_Seconds_From_SQL
{
    public partial class Form1 : Form
    {
        SqlConnection m_cnSQLConnection;
        SqlDataAdapter m_daDataAdapter;
        DataTable m_dtOrders;
        SqlCommand m_comSQLCommand;

        public Form1()
        {
            InitializeComponent();
        }

        private void btnShowOrders_Click(object sender, EventArgs e)
        {
            // Set Connection string
            string strSQLConnection;
            strSQLConnection = @"Initial Catalog=Sandbox;Data Source=WFDW3B79\SQLEXPRESS;Persist Security Info=True;Integrated Security=True;";

            // Open connection
            using (m_cnSQLConnection = new SqlConnection(strSQLConnection))
            {
                m_cnSQLConnection.Open();
                // Create new DataAdapter
                using (m_daDataAdapter = new SqlDataAdapter("SELECT * FROM Orders", m_cnSQLConnection))
                {
                    // Use DataAdapter to fill DataTable
                    m_dtOrders = new DataTable();
                    m_daDataAdapter.Fill(m_dtOrders);

                    // Render data onto the screen
                   dataGridView.DataSource = m_dtOrders;
                }
            }    
        }
    }
}
4

2 回答 2

1

您需要更改 Grid 列的格式以显示所需格式的日期,这不是您的 SQL 的问题。

如何格式化 DataGridView 中的 DateTime 列?

于 2013-06-18T15:34:44.207 回答
1

长期为您的绑定字段提供日期格式:-

<asp:boundfield DataField="DateColumn" DataFormatString="{0:G}" HtmlEncode="false" />

更多关于日期格式字符串

于 2013-06-18T15:37:25.617 回答