簡體   English   中英

為什么來自SQL Server 2000的簡單SQL查詢在SQL Server 2008中會有不同的結果?

[英]Why does this simple SQL query from SQL Server 2000 have different results in SQL Server 2008?

使用MS SQL 2000可以進行如下查詢:

SELECT (Code + ' = ' + EdiNumber + ',') AS MyResult FROM tblCountry

這將為您提供結果列表,例如:

MyResult
========
ZW = 263,
ZA = 27,
...

但是,在MS SQL 2008中,該查詢返回:

-1 records affected

有誰知道a)為什么? b)如何從SQL 2008獲取SQL 2000結果?

更新

我只是使用標准的ASP.NET連接字符串使用控制台發布查詢來連接到數據庫:

Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\MyDB.mdf;Integrated Security=True;User Instance=True; Database=MyDB

問題解決了

-1 records affected顯然是非特權結果,因為所有實際發生的都是查詢中的錯誤,同時嘗試連接string (Code)和int (EdiNumber)

正確的查詢應該是:

SELECT (Code + ' = ' + CAST(EdiNumber AS VARCHAR) + ',') as MyResult FROM tblCountry

一旦確定正確,該查詢就可以在原始控制台中正常運行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM