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

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

SELECT OBJECT_DEFINITION(sys.objects.object_id)
FROM sys.objects 
WHERE type = 'TR'
2
Orion Adrian 29 Дек 2009 в 19:23

2 ответа

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

Копипаст не нужен :)

2
jvenema 29 Дек 2009 в 19:37
Я получаю усечение, используя метод, описанный выше, с моим запросом.
 – 
Orion Adrian
29 Дек 2009 в 21:13
1
В диалоговом окне, которое упоминает jvenema, установите для параметра «Максимальное количество символов» большее значение, например 1024.
 – 
Dour High Arch
29 Дек 2009 в 21:22

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

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

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

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

  • bcp или sqlcmd с использованием OBJECT_DEFINITION в sys.objects для создания простого текстового файла?
  • использовать SQL-запрос в Excel?
  • СМО?
  • «Результаты в файл» (как упоминалось jvenema)?
1
gbn 29 Дек 2009 в 20:50
Там нет усечения, системные комментарии просто добавляют дополнительные строки, чтобы покрыть все это.
 – 
Orion Adrian
29 Дек 2009 в 20:53
И это делает его пригодным для использования? это плохая привычка со времен SQL 2005. В любом случае, я предложил идеи о том, как вернуть ваши новые строки...
 – 
gbn
29 Дек 2009 в 20:56
1
Я получаю усечение с OBJECT_DEFINITION и с sys_modules.
 – 
Orion Adrian
29 Дек 2009 в 21:03
Только потому, что вы неправильно читаете данные при вырезании и вставке из SSMS.
 – 
gbn
29 Дек 2009 в 21:04
Я просматриваю усечение в SSMS, прежде чем сделать копию.
 – 
Orion Adrian
29 Дек 2009 в 21:10