EF4& SQL Server 2014:SQL语句的某些部分嵌套得太深。重写查询或将其分解为较小的查询

时间:2016-06-02 11:42:31

标签: sql-server entity-framework-4

我的Web应用程序正在使用Entity Framework 4.0和2个Microsoft SQL Server:

  • 测试服务器(版本11.0.9231 - SQL Server 2012)
  • 生产服务器(版本12.0.2548.0 - SQL Server 2014)

测试应用程序正常运行没有错误,但在生产机器上出现此错误:

  

System.Data.EntityCommandExecutionException:发生错误   执行命令定义。有关详细信息,请参阅内部异常   ---> System.Data.SqlClient.SqlException:SQL语句的某些部分嵌套太深。重写查询或将其分解为   较小的查询。在......

我是否需要为生产SQL Server安装任何补丁?

1 个答案:

答案 0 :(得分:0)

您是否需要为生产SQL服务器安装任何补丁?实际上,您需要做的是将测试环境升级/修补为与生产相同的版本。

真正的错误不在于它在生产中失败,而是在测试中成功。即使你为生产问题创建了一个修复程序,你可以在哪里测试它,因为它只发生在prod?

实体框架生成的实际查询是什么?我怀疑当你查看实际的查询时,你会更接近理解问题。您的查询可能是一个应该重写的怪物,即使它在"测试"环境。