2011-04-18 2 views
2

나는 EF4 및 SQL Server 2005를 사용하여 내 웹 사이트를 개발했지만, 준비 사이트로 이동할 때 그들이 지금은이 오류를 받고 있어요 SQL 서버를 2000EF4 및 SQL Server 2000의

를 사용하는 것이 밝혀 SQL Server 2000과 관련이 있다고 생각합니다.

Incorrect syntax near '('. 'row_number' is not a recognized function name. 

해결 방법이 있습니까?

+0

난 그냥 같은 일을했고, 같은 질문을하고 있었다없이 작동한다고 보장 할 수 없습니다. 이제 데이터 레이어를 완전히 다시 코딩해야하는 상황을 생각하고 있습니다. –

+0

row_number 함수를 사용하지 않는 대체 쿼리를 만들 수 있도록 실행중인 쿼리에 대한 자세한 정보를 제공 할 수 있습니까? – imdondo

+0

그것은 쿼리를 생성하는 EF4입니다 ... – user441365

답변

4

EF v4를 여기에 SQL 서버를 2000 자세한 내용을 지원하지 않습니다

감사 :

https://connect.microsoft.com/VisualStudio/feedback/details/499186/entity-framework-v2-doesn-t-support-sql-2000

+0

굉장합니다. 이 주위에 어떤 방법이 있습니까 ??? – user441365

+1

주위에 = 아무 방법도 지원하지 않습니다. –

+0

자세한 내용은 http://stackoverflow.com/questions/1600630/entity-framework-v2-doesnt-support-sql-2000을 확인하십시오. –

0

ROW_NUMBER()는 각 행이 반환 된의 일련 번호를 반환합니다. Row_number()를 호출하거나 엔티티 프레임 워크입니까?

어느 쪽이든, ROW_NUMBER를 다시 구현하는 사용자 정의 함수를 작성할 수 있습니다. 여기에 Stackoverflow 여기에 게시 : ROW_NUMBER Alternative for SQL Server 2000

이것은 장기적으로 어떤 좋은 일을 할 지 확신하지 못합니다; 이 문제를 해결하기 위해 EF가 SQL 2000에서 작동하지 않는다는 다음의 이유를 만날 수 있다는 것을 알게 될 것입니다.하지만 몇 분 정도만 시도해 볼 가치가 있습니다.

+0

쿼리를 생성하는 것은 EF4입니다. – user441365

1

정확히 똑같은 문제를 겪었고 StackOverflow의 댓글/응답에 따라 클라이언트에게 거의 포기하고 데이터베이스를> 2000 버전으로 업그레이드했습니다. 불행히도 그것은 많은 다른 문제로 인해 불가능했습니다. 나는 해결책을 찾기 위해 주위를 돌아 다녔고 어딘가에서 나는 해결 방법을 찾았다.

이것은 내가 한 행동입니다.

  • 오른쪽은 ModelName.EDMX 파일을 클릭 - 찾을 수
  • 선정 된 XML (텍스트) 편집기
  • 으로 열기>를 ProviderManifestToken = "2005"와 ProviderManifestToken로 대체 = "2000"
  • 가 간행 변화와 실망!

지금 이유 나는

  1. 다시 데이터베이스에서 해당 모델을 업데이트하는 경우 및 개발 기계 데이터베이스> = 2000이기 때문에이 주변 업무 (안 솔루션)입니다입니다 말하는거야 (이는 SQL과 같은 경우가 될 가능성이 2000 연결 this article에 따라 MS가 전혀 지원되지 않음) XML에서이 값이 자동으로

  2. 는 또한이 변경 후 EF에 의해 생성 된 쿼리에서 일한 변경됩니다 012 3,516,내 상황하지만 난 당신의 응용 프로그램에 의해 생성 된 모든 쿼리 적 이 문제

관련 문제