2013-03-25 97 views
0

先生/女士,C#DateTime更改为另一种格式

我将执行Oracle批量插入,但无效的绑定参数参数:System.dateTime在此处发出警告。

创建日期的字段是时间戳(0),其中22-MAR-13 08.13.27.000000000 PM仅为accpeted格式。

但是当我试图从字符串转换为DateTime如下:

2013年3月22日下午八时00分00秒

使用下面的方法:

item.CreatedDate = Convert.ToDateTime("19-MAR-13 08.13.27 PM"); 

// BELOW IS ORACLE BULK INSERT

 using (OracleConnection myConnection = new OracleConnection(myConnectionString)) 
     { 
      myConnection.Open(); 
      using (var copy = new OracleBulkCopy(myConnection)) 
      { 
       copy.DestinationTableName = "T_BQ"; 
       copy.BulkCopyTimeout = 10; 
       copy.BatchSize = 1000; 
       var query = from item in list select item; 
       var dt = new System.Data.DataTable(); 
       dt = ConvertToDataTable(query); 
       copy.WriteToServer(dt); 
       copy.Dispose(); 
       copy.Close(); 
      } 
      myConnection.Dispose(); 
      myConnection.Close(); 
     } 
+0

你检查我的答案? – Arshad 2013-03-25 07:14:11

+0

检查,它的工作原理! – 2013-03-26 07:02:00

回答

3

您可以使用DateTime.TryParseExact定制datetime格式为:

string strDateStarted = "19-MAR-13 08.13.27 AM"; 
DateTime datDateStarted; 
DateTime.TryParseExact(strDateStarted, new string[] { "dd-MMM-yy hh.mm.ss tt" }, System.Globalization.CultureInfo.InvariantCulture, System.Globalization.DateTimeStyles.None, out datDateStarted); 
Console.WriteLine(datDateStarted); 
3

您应该使用:进行时间分隔用r .

试试这个:

item.CreatedDate = Convert.ToDateTime("19-MAR-13 08:13:27 PM"); 
+0

无效的参数绑定 参数名称:System.DateTime 发生 – 2013-03-25 03:16:01

+0

@RjujuGujarati:在您的问题中发布更多代码,尤其是导致错误的代码。 – 2013-03-25 03:18:21

+0

copy.WriteToServer(dt);错误 – 2013-03-25 03:39:04

2

试试这个,

dateVariable.ToString("MM/dd/yyyy hh:mm:sstt"); 
相关问题