Я запускаю запрос в SQL Management Studio (результаты в сетку), затем выбираю все результаты и копирую их с заголовками. Потом вставляю в Excel.
Результат: две конкретные записи помещаются в одну строку в Excel.
С двумя конкретными я имею в виду, что сначала я получил 26000+ записей, а затем, обнаружив эту ошибку, изменил запрос, чтобы получить только эти две записи, и по-прежнему имел место то же явление, этого не произошло ни в одной из других 26000 записи.
Я запускаю Management Studio 2008 на машине с Windows 7, подключенной к SQL Server 2000, работающей на сервере Windows 2003. Я пробовал копировать как в Excel 2003, так и в Excel 2007, и это происходит в обоих случаях.
Похоже, это как-то связано с двойными кавычками. Четвертое поле (типа varchar (50)) имеет двойные кавычки для обеих строк (и многих других), но это не первый и не последний символ. Шестое поле (типа varchar (1000)) в первой из двух записей имеет двойные кавычки в качестве первого символа. Четвертое поле первой записи появляется нормально. Все поля от шестого поля первой записи до (включительно) четвертого поля второй записи отображаются в одной и той же ячейке в Excel. Но двойные кавычки в конце шестого поля первой записи и четвертого поля второй записи удаляются.Символы после двойных кавычек в четвертом поле второй записи остаются в той же ячейке. Остальные поля второй записи появляются в последовательных столбцах Excel.
При вставке в блокнот данные отображаются нормально.
Я не могу назвать точные данные, но они имеют примерно следующий вид:
float varchar(50) varchar(50) varchar(50) datetime varchar(50) varchar(1000) varchar(50)
1.1 text text text"text 2012-01-01 00:00:00.000 text "text text
1.1 text text text"text 2012-01-01 00:00:00.000 text text text
Кто-нибудь сталкивался с этой ошибкой раньше? Какое приложение вызывает нарушение? SQL Server Management Studio 2008, Windows 7, обе версии Excel, sql server 2000, Windows 2003? Если это SQL-сервер, происходит ли это внутри SQL-сервера?
Я знаю, что это очень старый вопрос, но я только что столкнулся с той же проблемой, и это было из-за символа ". Я просто удалил это в своем запросе с помощью синтаксиса замены и это сработало. PS Я также удалил все данные CR LR.
(REPLACE (REPLACE (REPLACE (REPLACE (, CHAR (9), ''), CHAR (10), ''), CHAR (13), ''), CHAR (34), ''))
Не нужно ни о чем беспокоиться. Его решение простое, просто не выбирайте все столбцы с помощью *, вам нужно писать имена столбцов ... будь то все столбцы, но вы должны указать имена столбцов в select, тогда это обязательно сработает .. Я тестировал, и он работает просто отлично .. Приветствую :)