Изменение SQL - запроса

Иногда Crystal Reports не использует все преимущества расширений SQL на вашем сервере, так что у вас может возникнуть необходимость в модификации SQL и включить эти расширения. Или же у вас может возникнуть желание скопировать SQL из другого инструмента запросов в диалоговое окно Show SQL Query. Вы можете изменять по своему желанию операторы FROM, WHERE и ORDER BY в предложении SQL. При этом, не имея практически никаких ограничений. Что касается оператора SELECT, то изменение его запрещено. Можно печатать поверх него, но ни одно внесенное изменение не будет сохранено. (Даже не пытайтесь заменить SELECT на DELETE или UPDATE — ваши изменения не вызовут никаких изменений на сервере!)

Убедитесь, что модификация подчиняется правилам конкретного синтаксиса SQL, служащего основой для вашего отчета. Три примера предложений SQL, приведенные ранее, отчетливо выявляют небольшие синтаксические различия между разными методами связи с одними и теми же данными. Если вы используете некорректный синтаксис SQL, то при обновлении отчета возникнет сообщение об ошибке. Если вы вручную меняете запрос SQL, а затем находите лучшее решение, вы всегда можете нажать кнопку Reset в нижнем правом углу диалогового окна Show SQL Query. При этом удаляются все внесенные изменения запроса, и восстанавливается его значение по умолчанию в Crystal Reports.

Очень важно понять, как взаимодействуют друг с другом использование диалогового окна Show SQL Query и отбор записей для отчета. Это становится особенно актуальным, если учесть, что обсуждаемый процесс был несколько изменен в Crystal Reports 8. В более ранних версиях эти два метода были, в действительности, взаимоисключающими: вы могли либо, используя Select Expert или формулу выбора записей, определить выбор записи, локально выполняемый Crystal Reports, либо определить серверу пределы запроса, применяя оператор WHERE, но не то и другое вместе. Сейчас это выглядит иначе.

При первой генерации отчета по базе данных SQL и выборе записи с помощью Select Expert или формулы выбора записи, Crystal Reports пытается преобразовать выбор записи в оператор SQL WHERE. Если затем вручную изменить оператор WHERE в диалоговом окне Show SQL Query, то, как и в предыдущих версиях Crystal Reports, выбор записи, сделанный с помощью формулы или Select Expert, исчезнет. Ограничение записей отчета в Crystal Reports будет зависеть от ваших настроек SQL.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: