2013-03-28 42 views
0

我有一个查询要求将Varchar转换为INT。 Iam目前没有发布查询本身,因为我不相信问题在那里。错误将varchar转换为Int-Sql服务器vs本地PC上的SQL

我使用来自服务器SQL文件的备份在我的家用PC上设置了查询。我在两台机器上安装了Server 2008 R2。

查询在我的电脑上运行100%,但在服务器上运行时出现将varchar转换为INT的错误。

Iam猜测有一个设置的地方是不一样的?我检查了区域设置,问题不在那里。有任何想法吗?

回答

1

问题在于如何评估查询。您无法保证查询的哪些部分将被评估,因此在一台机器上可能会发生过滤器,而在另一台机器上可能会发生过滤器。或者可以以不同的顺序评估WHERE子句条件

SQL是声明性的,而不是程序性的。使用SQL,您可以询问您想要的内容,并且查询优化器会对其看起来合适的方式予以表扬。在程序语言(C#,Java等)中,你可以控制执行顺序。

原因如下:Why use Select Top 100 Percent?

相关问题