2012-04-23 34 views
0

SQL Serverデータベースでは、タイムスタンプがミリ秒単位で追加されます。しかし、取得中にミリ秒単位が返されるのではなく、タイムスタンプが2012-04-23 15:03:35.345 PMの場合は取得時には2012-04-23 15:03:35.000 PMしか取得できません。私は、データを取得するために、次のコードを使用:SQL Serverから取得中にミリ秒でタイムスタンプを取得するには?

query = "Select * from database"; 
_cmd = new SqlCommand(query, _con); 

SqlDataAdapter da = new SqlDataAdapter(_cmd); 
DataTable dt = new DataTable(); 
da.Fill(dt); 

foreach (DataRow dr in dt.Rows) 
{ 
    string str = Convert.ToDateTime(dr[0].ToString()).ToString("yyyy-MM-ddhh:mm:ss.fff"); 
    dt[0] = str; 
} 

私もミリ秒を取得できますか?

答えて

2

dr[0]はおそらく既にDateTimeであり、それをstringに変換してDateTimeに戻すことはうまく行かないでしょう。私はあなたがそれをキャストする必要があるとします(あなたのケースdr[0]で、または単に興味深い部分)式全体を選択することにより、式の型をチェックする

string str = ((DateTime)dr[0]).ToString("yyyy-MM-ddhh:mm:ss.fff"); 

使用デバッガ、右の選択をクリックして、 `[クイックウォッチ」を選択します。リストの最後の列はTypeです。

関連する問題