[英]Convert date string to a SQL readable date format
我正在尝试将日期字符串Oct 21 2014 1:00 AM
为2014-10-21 01:00:00
或 SQL Server 可以理解的内容。
Use DateTime.TryParse使用DateTime.TryParse
var dateString = "Oct 21 2014 1:00 AM";
DateTime result;
DateTime.TryParse(dateString, out result);
var sqlDate = result.ToString("yyyy-MM-dd HH:mm:ss");
I'd argue that if you're using ADO.NET to communicate with your SQL Server, you shouldn't use a formatted date string as a query parameter.我认为,如果您使用 ADO.NET 与 SQL Server 进行通信,则不应使用格式化的日期字符串作为查询参数。 You should instead use a DateTime
object.您应该改用DateTime
对象。 You can get it from your string by using either the DateTime.Parse
or DateTime.TryParse
methods:您可以使用DateTime.Parse
或DateTime.TryParse
方法从字符串中获取它:
DateTime date = DateTime.Parse("Oct 21 2014 1:00 AM"); // Use this as your query parameter.
However if you do decide to go with using a formatted string, the simplest way would be first parse it to as shown above, then you can use ToString
with a format string overload, to format your date as you want.但是,如果您决定使用格式化字符串,最简单的方法是首先将其解析为如上所示,然后您可以使用带有格式字符串重载的ToString
,根据需要格式化您的日期。
To get your example format:要获取您的示例格式:
DateTime date = DateTime.Parse("Oct 21 2014 1:00 AM");
string formatted = DateTime.ToString("yyyy-MM-dd hh:mm:ss"); // 2014-10-21 01:00:00
Please see answer here.请在此处查看答案。
Converting a String to DateTime 将字符串转换为日期时间
DateTime.ParseExact may work for you to convert in DateTime and then you can use ToString(<format>)
with format to convert it in required string. DateTime.ParseExact 可能适合您在 DateTime 中进行转换,然后您可以使用ToString(<format>)
和 format 将其转换为所需的字符串。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.