2012-08-17 2 views
-1

이 문제를 해결하기 위해 도움이 필요합니다.dataReader를 사용하여 datetime 값을 요청하고 min 값을 얻습니다.

나는 DataReader를이 있고 날짜 열을 읽고, 함수 GetDateTime를 사용할 때, 나는 최소 값을 얻는다. GetDate 함수가 표시되지 않습니다. 둘 다 동일한 데이터 형식을 갖기 위해 Datetime으로 열의 데이터 형식을 변경하려고했지만 동일한 결과가 발생했습니다. 이 debbuging 때 제시 한 값이다

string sql = "SELECT * FROM Solped order by docNumber DESC"; 
      System.Console.WriteLine(sql); 
      SqlCommand cmd = new SqlCommand(sql, con); 
      SqlDataReader reader = cmd.ExecuteReader(); 

      while (reader.Read()) 
      { 
       solped = new Solped(); 

       solped.docNumber = reader.GetInt32(0); 
       solped.docType = reader.GetString(1); 

       DateTime dt = reader.GetDateTime(2); 
       solped.fecha = dt; 

:

dt = {1/1/0001 12:00:00 AM} 

은 내가 데이터베이스를 읽을 곳입니다

CREATE TABLE [dbo].[Solped](
    [docNumber] [int] NOT NULL, 
    [docType] [nvarchar](255) NOT NULL, 
    [createDate] [date] NULL, 
    [hora] [time](2) NULL, 
    .... 

:

은 테이블의 정의입니다 이 값은 프로그램에서 제시 한 값입니다.

Date(1345089600000) 

난 내가 문제를 해결하기 위해 수행해야 할 기능이나 행동 모르는에 대해 완전히 혼란 스러워요. 도움이된다면 크게 감사하겠습니다. 감사!

답변

0

은 날짜와 테이블에 두 개의 서로 다른 컬럼의 시간을 가지고있는 것처럼,이

SELECT DocNumber, DocType, 
CAST(CAST(createDate as varchar(10)) + ' ' + CAST(hora as varchar(12)) as datetime) as fullDate 
FROM Solped 
+0

예,이 둘은 서로 다른 두 개의 기둥에 시도 봐. 나는 그것들을 하나에 넣을 것이다. 하지만 DataReader의 getDateTime 함수를 사용할 때 날짜는 null입니다. –

+0

그런 다음이 열에 NULL 값이있는 레코드가 테이블에 있는지 확인해야합니다. – saul672

+0

아니요. 모두 채워집니다. –

관련 문제