我想创建一个包含DATE
列的表。对于该列,我使用的是DateTime
数据类型。
是否有任何其他数据类型或选项仅显示没有时间的日期。我正在使用Sql Server 2005
是否有任何格式可供使用?
否则,如果我使用Datetime
数据类型,如何在c#中使用Update
查询进行检索。
我使用C#代码如何仅检索日期
SqlCommand cmd = new SqlCommand(("Update tablename set Date = convert(GETDATE(),103) where Name ='" + TextBox1.Text + "' "), con);
答案 0 :(得分:1)
您必须使用Datetime
。看看this chart。
答案 1 :(得分:0)
SELECT replace(convert(varchar, getdate(), 111), '/','-' ) -> YYYY-MM-DD
答案 2 :(得分:0)
您可以将SQL Server格式化函数与转换函数一起使用。这是您可以找到所有格式化功能的链接。
http://www.sql-server-helper.com/tips/date-formats.aspx
如果您使用SQL Server 2008,则只能使用日期类型。
答案 3 :(得分:0)
直到SQL Server 2008才引入DATE数据类型。作为数据类型,它不是2005的一部分。您必须将其存储为DATETIME,然后使用某种转换来剥离时间部分。< / p>
此外,SQL Server 2005不再是受支持的平台。无论如何,您应该考虑升级到更新的平台。
答案 4 :(得分:0)
遵循这种模式,
const string updateTable = "UPDATE [dbo].[Tablename]
SET [Date] = getutcdate()
WHERE [Name] = @Name;"
using (var connection = new SqlConnection(youConnectionString))
{
using(var command = new SqlCommand(updateTable, connection))
{
command.Parameters.AddWithValue("@Name", TextBox1.Text);
connection.Open();
command.ExecuteNonQuery();
}
}