I 데이터 액세스를 위해 공공 모듈을 가지고 몇 가지 코드 상속했습니다vb.net 데이터 액세스 용 모듈 - 얼마나 나쁜가?
코드는 다음과 같습니다
Public Module Foo
Dim ds As New DataSet
Public Function GetDataSet(ByVal sqlQuery As String) As DataSet
...
Fill(ds)...
...
return ds
End Function
End Module
그리고 모든 페이지는 GetDataSet(sql)
를 호출합니다. 나는 이것이 나쁜 생각이라고 가정하고있다. 최악의 경우 동시 호출자가 서로 다른 데이터를 가져올 수 있다는 것입니다.
쉽습니다. 그러나 그것은 좋은 연습이 아닙니다 (다시 특정 DB 관련 도구/유틸리티 제외). – RBarryYoung
나는 그것이 좋은 연습인지 아닌지 항상 궁금해했습니다 ... 나는 내 지식으로 DB를 MySQL로 사용합니다 (정확하지 않을 수도 있습니다) linq 직접 번역하지 않습니다. 나는 내 SQL 문자열을 보는 것과 비슷하다. 하지만 DB에 액세스하는 모든 단일 장소에 대해 새로운 데이터 액세스 기능을 만드는 것이 더 나은 방법이라고 생각합니다. DRY는 어떻게 된거야? – Jason
DRY = 자신을 반복하지 마십시오 : SQL을 저장 프로 시저에 넣으면 반복하지 않아도됩니다. 글쎄, 더 이상 당신이 묻힌 SQL (질문에). 사실은 영구적 인 구조화 된 데이터 (즉, 데이터베이스)를 사용하는 모든 애플리케이션에서 DRY를 완전히 적용 할 수 없다는 것입니다. 양식에 필드를 추가하려면 DB 변경과 그 사이의 코드 변경이 필요합니다. 데이터 유형 변경 등과 동일합니다. – RBarryYoung