Linq 외에도 관계형 기능을 라이브러리가 아닌 객체 지향 언어 자체에 통합하려는 다른 시도가 있었습니까?객체 지향 프로그래밍 언어의 관계형 기능
업데이트 가장 분명한 예로는 일대일, 일대 다 또는 다 대다 관계입니다. 그런 다음 속성이있는 관계를 고려할 수도 있습니다.
Linq 외에도 관계형 기능을 라이브러리가 아닌 객체 지향 언어 자체에 통합하려는 다른 시도가 있었습니까?객체 지향 프로그래밍 언어의 관계형 기능
업데이트 가장 분명한 예로는 일대일, 일대 다 또는 다 대다 관계입니다. 그런 다음 속성이있는 관계를 고려할 수도 있습니다.
정보가 없습니다. 사실, LINQ 자체는 원래 "Codd"라는 단어의 의미에서 특히 "관계형"이 아닙니다. (SQL은 하나도 아니지만 또 다른 이야기입니다.)
음색을 설정하기 만하면 LINQ는 릴레이션의 개념조차 갖지 않습니다 (느슨하게 말하면 제목에 일치하는 이름/값 튜플 세트). 이것은 이름/타입 튜플이다). 튜플 대신 집합과 객체보다는 시퀀스를 처리합니다. 익명의 객체조차도 관계형 모델에서 명명 된 튜플과 같은 것이 아닙니다. new { b = 2, a = 1 }
은 new { a = 1, b = 2 }
과 같지 않을뿐만 아니라 동일한 유형조차 아닙니다!
LINQ는 지난 40 년간의 데이터 액세스 열차 사고에 비해 엄청난 발전 이었지만, 올바른 방향으로가는 작은 단계 일 뿐이며, 앞으로 더 이상 취할 의사가 없다고 생각합니다. 단계. 사실, LINQ-to-EF는 OO 모델링과 관계형 모델에서 벗어나 잘못된 방향으로 커다란 발걸음을 내딛었습니다 (물론 모든 사람이 저와 동의하지는 않습니다 ;-).
이 포스트 그레스에 대한 C에서 임베디드 SQL이다 : http://www.postgresql.org/docs/8.4/interactive/ecpg.html
는하지만 그것을 자신을 사용하지 않습니다.
대부분의 경우 간단한 라이브러리는 SQL 데이터베이스에 액세스 할 수 있으며 "관계형"세계와 개체 지향 세계를 구분할 수 있습니다 (단, Marcelo Cantos가 말했듯이 SQL은 실제로 관계형이 아닙니다. 이론적 인 감각 ..).
그러나 관계형과 객체 지향간에 "매핑"할 무언가를 찾고 있습니까? 관계형 데이터베이스에 일종의 객체 지향 뷰를 생성하는 객체 지향 매핑이라는 기술이 있습니다 (http://en.wikipedia.org/wiki/Object-relational_mapping 참조). 그러나 이것이 좋은 것처럼 들리 겠지만 실제로는 몇 가지 문제가 발생합니다 (자세한 내용은 http://en.wikipedia.org/wiki/Object-relational_impedance_mismatch 참조).
'관계형 기능'정의 –