문제

우리는 우리 자신의 ORM 우리는 여기서 사용하고 제공하는 강력한 형식의 포장지에 대한 우리의 모든 db 테이블이 있습니다.우리는 또한 허용 약한 형식의 ad-hoc SQL 실행되지만,이러한 쿼리는 여전히 통과 같은 클래스를 얻기를 위해 값의 데이터 리더입니다.

에서 꼬집는 클래스를 일으로 오라클 우리는 재미있는 질문입니다.그것은 더 나은 사용하는 이 변환은 지원.가치,또는 null?어떤 혜택이 있을 사용하여 이 변환은 지원.값?그것이 더 많은 것 같다"올바른"사용 null 이후,우리는 분리에서 자신의 DB 세계만의 의미는 다음과 같습니다(할 수 없는 맹목적으로 ToString() 값이 있는 경우 null 에 대한 예)그래서 그가 뭔가 확실히 우리는 의식적인 의사 결정에 대해입니다.

도움이 되었습니까?

해결책

나는 그것을 찾을 사용하는 것이 좋 null,대신 DB null 입니다.

는 이유이기 때문에,당신이 말했듯이,당신이 자신을 분리해 데이터베이스로부터 세계입니다.

그것은 일반적으로 좋은 연습을 확인하는 참조 형식을 보장하지 않 null anyway.당신이 검사가 될 null 한 것 이외의 다른 DB 데이터,그리고 나는 그것이 최고의 일관성을 유지 시스템에서 사용하고,null,지 DBNull.

장기적,구조적으로 내가 그것을 발견하는 더 나은 솔루션입니다.

다른 팁

만약 당신이 작성한 자신의 ORM,다음을 말하는 것만 사용에 null 을 사용할 수 있기 때문에 그것은 그러나 당신이 원하는.내가 믿는 이 변환은 지원에 사용되었지만 사실은 주위에 가치 유형(int,날짜/시간,etc.) 수 null,그래서 보다는 오히려 일부 값을 반환 또는 제 날짜/시간입니다.분는 것입 null(나쁜 나쁜),그들이 만들어진 이 변환은 지원하는 이를 나타냅니다.어쩌면 더 많은 정보를 공유하기 위해,그것만으로는 이유입니다.그러나,이제는 우리가 널 유형 C#3.0,이 변환은 지원이 더 이상 필요하지 않습니다.사실,LINQ to SQL 사 null 모든 장소입니다.전혀 문제가 없습니다.포옹 미래를...사용 null 입니다.;-)

에서 경험을 했다.NET DataTables 및 Tableadapter 더 나은 작업으로 이 변환은 지원.그것은 또한 열 몇 가지 특별한 방법을 경우 강력한 형식과 같은 읽.IsFirstNameNull 경우에는 장소입니다.

내가 줄 수 있는 더 나은 기술적 대답보다는,하지만 나에 대한 결론은 사용하여 이 변환은 지원 작업을 할 때 데이터베이스와 관련된 개체는 다음을 사용하는"표준"null 때 내가 다루는 개체.NET 관련 코드입니다.

DBNull.
우리는 encouintered 어떤 종류의 문제를 사용하는 경우 null 입니다.
면 내가 올바르게 기억에 삽입할 수 없습니다 null 값을의 필드만 이 변환은 지원.
수 Oracle 관련만,미안하지 자세히 알고 있습니다 더 이상.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top