Abh*_*shu 3 c# sql sql-server-2008
以win形式保存的数据,输入日期格式为(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!");
}
Run Code Online (Sandbox Code Playgroud)
日期时间选择器 (dtTmPkr) 格式 (dd/mm/yyyy)
SQL Server 不DateTime以任何字符串格式存储 a - 它存储为 8 字节数值。
各种设置(语言、日期格式)仅影响DateTimeSQL Server Management Studio 中向您显示的方式 - 或者当您尝试将字符串转换为DateTime.
SQL Server 支持多种格式 - 请参阅有关 CAST 和 CONVERT的MSDN 联机丛书。
所以实际上,这与更改 SQL Server 中的日期格式无关 - 而是关于如何格式化和显示Datetime从 SQL Server 检索的日期格式。使用适当的 T-SQLCONVERT参数,或DateTime在 C# 前端代码中格式化
更新:如果您DateTimePicker使用问题中显示的查询将值从SQL Server插入到 SQL Server 中,那么您应该没问题 - 它正在插入一个DateTime参数,因此您的日期字符串格式不会有任何问题。
当您需要将DATETIMESQL Server 中的 a转换为特定格式时 - 使用
SELECT CONVERT(VARCHAR(50), YourDateColumn, 103)
Run Code Online (Sandbox Code Playgroud)
这将为您提供dd/mm/yyyy(英国/法国)格式的日期。如果您需要不同的格式 - 使用不同的样式(103 以外的其他数字)。这些样式在这里有很好的记录。
如果您将DateTime列读回C# 并且需要对其进行格式化,则使用
string formatted = YourDateTime.ToString("dd/MM/yyyy");
Run Code Online (Sandbox Code Playgroud)
以获得您需要的值。注意:要格式化月份,请使用MM(大写!),因为它mm会格式化您的分钟DateTime。
| 归档时间: |
|
| 查看次数: |
2394 次 |
| 最近记录: |