对于通过获胜表格保存的数据,输入日期格式为(dd / mm / yyyy)。数据库以(yyyy-mm-dd)格式显示。如何更改日期格式?
private void btnAllocate_Click(object sender, EventArgs e)
{
for (int i = 0; i < dgvDetails.Rows.Count; i++)
{
SqlConnection con = new SqlConnection("server=HP-HP; database=Restaurent; user id=sa; password=sql2008");
SqlCommand cmd = new SqlCommand("INSERT INTO WtrTblAllot (WtrNm,Type,No,currDate) values (@WtrNm,@Type,@No,@currDate)", con);
cmd.Parameters.AddWithValue("@WtrNm", dgvDetails.Rows[i].Cells[0].Value);
cmd.Parameters.AddWithValue("@Type", dgvDetails.Rows[i].Cells[1].Value);
cmd.Parameters.AddWithValue("@No", dgvDetails.Rows[i].Cells[2].Value);
cmd.Parameters.AddWithValue("@currDate", dtTmPkr.Value);
con.Open();
cmd.ExecuteNonQuery();
cmd = null;
}
MessageBox.Show("Added successfully!");
}
日期时间码(dtTmPkr)格式(dd / mm / yyyy)
SQL Server不会DateTime
以任何字符串格式存储a-它以8字节数字值存储。
各种设置(语言,日期格式)仅影响DateTime
SQL Server Management Studio中向您显示的方式-或当您尝试将字符串转换为时如何对其进行解析DateTime
。
SQL Server支持多种格式-有关CAST和CONVERT的信息,请参见MSDN联机丛书。
因此,实际上,这与更改SQL Server中的日期格式无关,而与如何格式化和显示Datetime
从SQL Server中检索到的日期有关。使用适当的T-SQLCONVERT
参数,或DateTime
在C#前端代码中设置的格式
更新:如果您DateTimePicker
使用问题中显示的查询将值从in插入SQL Server,则应该没问题-它会插入DateTime
参数,因此日期字符串格式不会出现任何问题。
当您需要将DATETIME
SQL Server中的A转换为特定格式时-使用
SELECT CONVERT(VARCHAR(50), YourDateColumn, 103)
这将为您提供dd/mm/yyyy
(英国/法国)格式的日期。如果您需要其他格式,请使用其他样式(103以外的其他编号)。这些样式在这里有很好的记录。
如果您将该DateTime
列读回C#,并且需要对其进行格式设置,请使用
string formatted = YourDateTime.ToString("dd/MM/yyyy");
获得所需的值。注意:要格式化月份,请使用MM
(大写!),因为这mm
会格式化您的分钟DateTime
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句