2009-12-29 3 views
0

Я создаю скрипт, чтобы получить все триггеры в документе, но я хочу включить новые строки. Я копирую и вставляю это в excel, чтобы затем быстро генерировать некоторую документацию с мандатом, но все содержимое текстового столбца в конечном итоге генерируется без символов новой строки.Как включить новые строки из систем в SQL Server?

линия настоящее время я использую, которая производит усечение в результатах файла:

SELECT OBJECT_DEFINITION(sys.objects.object_id) 
FROM sys.objects 
WHERE type = 'TR' 

ответ

2
Tools->Options->Query Results->Results to file 

Нет копия паста нужна :)

+0

Я получаю усечение с помощью метода выше с моим запросом. –

+1

В диалоговом окне jvenema указано «Максимальное количество символов» до большего значения, такого как 1024. –

1

С одной стороны, не используйте syscomments на SQL Server 2005+. Используйте sys.sql_modules или OBJECT_DEFINITION. Тип данных в syscomments в nvarchar (4000), что означает усечение.

Если вы находитесь в:

  • «Результаты в сетке», вы никогда не будете иметь Newlines
  • «Результаты в текст», вы будете иметь усечение (в tools..options где-то)

Итак, почему бы не использовать один из этих методов:

  • BCP или Sqlcmd использования OBJECT_DEFINITION на sys.objects для создания равнины текстовый файл?
  • использовать SQL-запрос в Excel?
  • SMO?
  • «Результаты в файле» (как упоминалось в jvenema)?
+0

Нет усечения, syscomments просто добавляет дополнительные строки, чтобы покрыть все это. –

+0

И это делает его полезным? это плохая привычка с SQL 2005. Во всяком случае, я предложил идеи о том, как вернуть ваши строки ... – gbn

+1

Я получаю усечение с OBJECT_DEFINITION и с sys_modules. –

Смежные вопросы