2014-03-07 4 views
2

SQL Server 데이터베이스로 C# 프로그램을 만들고 있는데 부정적인 데이터와 긍정적 인 데이터를 처리하기 위해 제안 된 모든 솔루션에서 선택하는 데 어려움을 겪고 있습니다. 실제로 여기에 내가 찾은 해결책이 있습니다 :C# 및 SQL의 제외 날짜가

  • 부울을 사용하여 BC 또는 AC를 나타냅니다.
  • 날짜 구성 요소 (jj, mm, (-) aaaa)를 int로 저장하고 확인을 처리하여 날짜가 존재하는지 여부를 확인하는 클래스를 만듭니다.

거기에는 다른 유형의 방법이 있지만 실제로는 나를 위해 가장 이해하기 쉬운 방법이라고 확신합니다.

이 소프트웨어는 캐릭터 북의 생일 및 기타 캐릭터 활동을 돕기위한 것입니다. 그래서 그 책의 시작 날짜는 문자가 들어있는 시대의 시작 부분 인 "10/01/0023"(jj/mm/aaaa)이고, 그 때 문자는 이미 80 세이며, 그는 태어났습니다 " 02/03/-0057 ".

내 질문에 위의 두 가지 솔루션 중 가장 가까운 것이이 문맥에서 작동하는 것을 중심으로합니다. 나는 나와 관련된 것을 읽었지만, 예를 들어, 소프트웨어가 나이가 들어서서부터 젊은 것에 이르기까지 캐릭터를 정렬하는 것을 처리 할 수있는 방법을 알지 못하고, 생년월일이 사망 날짜의 후방이 아닌지 확인합니다. 말이 안된다 ...

나는 이것이 나의 질문을 분명히하기를 바란다?

나는이 책을 읽는 데 시간을내어 주신 모든 분들께 진심으로 감사드립니다.

YYYYMMDD 등이이 가게 -YYYYMMDD으로 BC 날짜에 수있을 것입니다 방법 및 AD를 YYYYMMDD : 다음 거라고

+1

중복 가능성을 포맷 복근을 사용하십시오/5058709/what-is-the-the-best-way-to-handle-bc-dates-in-net-sql-server) – GarethD

+0

이 부분적으로 대답하기 때문에 내 질문을 수정하겠습니다. 나에게 그것을 지적 해 주셔서 고마워, 나는 내 수색에서 그것을 놓쳤다. – Ukyuu

+0

@ GarethD가 이러한 변화를 겪었는데, 왜 복제본이 아닌지 더 잘 보입니까, 아니면 저에게 답변해야하는 게시물의 요점을 놓친 것 같습니까? – Ukyuu

답변

1

는 ISO 형식의 숫자로 날짜를 저장하는 것 좋습니다. 또한 날짜를 쉽게 비교할 수 있습니다.

예 : if (-00801012 < 00110214) { ... } 또는

if (19741015 < 20140228) { ... } 화면에 날짜를 표시 할 때 신호를 주장해야 할 것입니다. boolean isAD = false; If (mydate > 0) { isAD = true; }

당신은 당신의 일 [무엇 .NET/SQL 서버에서 BC 날짜를 처리하는 가장 좋은 방법은 무엇입니까? (http://stackoverflow.com/questions의

+0

이 솔루션은 실제로 실제로 유용합니다. 내가 필요한 것입니다. 하지만 예를 들어 올해 스크린하는 방법에 대해 나에게 암시 해 주시겠습니까? ISO 형식을 "년" "일"과 "달"로 나누는 방법에 대해 고민 중입니다 ... 죄송합니다. – Ukyuu

+0

확인. 나는 그것을 들여다 볼 것이다. 곧 돌아 올게. –

+0

@Ricado Appleton http://pastebin.com/jj6PKCnZ가 대답을 제대로 사용하고 있다고 생각하십니까? 문자열에서 int로, 그리고 int에서 문자열로 넘어가는 것이 꽤 좋은 것인지 확신 할 수 없습니다. – Ukyuu