Почему этот простой запрос SQL из SQL Server 2000 имеет разные результаты в SQL Server 2008? - PullRequest
0 голосов
/ 08 декабря 2011

Используя MS SQL 2000, можно было получить запрос, такой как:

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

, который дал бы вам список результатов, таких как:

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

Однако в MS SQL2008 этот запрос возвращает:

-1 records affected

Кто-нибудь знает а) Почему?и б) Как получить результат SQL 2000 из SQL 2008?

ОБНОВЛЕНИЕ

Я просто использую стандартную строку подключения ASP.NET для подключения к базе данных, используяконсоль для отправки запроса:

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

1 Ответ

0 голосов
/ 08 декабря 2011

ПРОБЛЕМА РЕШЕНА

-1 records affected был явно непривилегированным результатом, потому что все, что на самом деле происходило, было ошибкой в ​​запросе при попытке объединить string (код) и int (EdiNumber)

Правильный запрос должен был быть:

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

Как только я понял это правильно, запрос работал с оригинальной консоли.

...