如何在SQL Server中更改日期格式,或者如何使用c#在SQL Server中插入datetime

本文关键字:SQL Server 何使用 插入 或者 datetime 日期 格式 | 更新日期: 2023-09-27 18:18:15

我有字符串date="20130613070000+1000",我转换为数据时间使用:

date_dt = DateTime.ParseExact(date, "yyyyMMddHHmmsszzz", null, DateTimeStyles.None);

结果date_dt=13/06/2013 12:00:00 AM

插入SQL Server数据库

insert into date (startdate) VALUES ('13/06/2013 12:00:00 PM')

我有一个问题-我得到一个错误:

Msg 242,第16层,第3州,第6线
将varchar数据类型转换为日期时间数据类型导致值超出范围。

dt_date转换为MM/dd/yyy格式的解决方案

如何在SQL Server中更改日期格式,或者如何使用c#在SQL Server中插入datetime

如何在数据库中插入?在c#代码中,你应该总是使用参数来传递值。框架会帮你完成转换!

更多信息:http://msdn.microsoft.com/en-us/library/ms254953.aspx

http://msdn.microsoft.com/en-us/library/4f844fc7.aspx

在插入日期作为字符串时可以使用ISO 8601格式。这应该适用于所有文化:

date_dt.ToString("s")

示例输出:

2013-06-13T10:29:57

或者,您可以使用带有参数的SqlCommand,它将为您完成转换。

您可以使用下面的转换函数将日期字符串转换为SQL日期时间格式

DECLARE @MyDate DATETIME 
SET @MyDate = CONVERT(DATETIME, '13/06/2013 12:00:00 PM', 103) 
INSERT INTO date (startdate) VALUES (@MyDate)

在这里找到了一个非常有用的书签链接。http://anubhavg.wordpress.com/2009/06/11/how-to-format-datetime-date-in-sql-server-2005/

You can insert into database SQL Server using
insert into date (startdate) VALUES ('06/13/2013 12:00:00 PM')
the format for datetime is mm/dd/yy...

如果您输入的是sql查询,那么您可以使用下面:

select CONVERT(VARCHAR(10),getdate(),101)
我希望它能帮助你。:)