Галерея
7757 8119 8300 8698 8817 9504 9722 9937
Интересные записи
Новое на сайте
Новое

Две разновидности динамического SQL

Две разновидности динамического SQLВсе разновидности динамического SQL можно обобщенно разделить на две категории. В первую из них попадают встроенные инструкции DDL и DML, а во вторую — динамические запросы. Различие между этими двумя категориями заключается в специфике обработки инструкций SQL. Как уже говорилось в начале главы, в процессе обработки инструкции SELECT существует дополнительный этап, заключающийся в возвращении данных в организованном виде. Так как инструкции DML (равно как и DDL) могут либо выполниться, либо нет, все, что нам нужно от СУБД, — получить код состояния SQLSTATE. Запрос SQL возвращает результирующий набор данных, который состоит из нескольких столбцов, возвращенных из некоторых таблиц. Точное количество столбцов и их типы данных могут быть неизвестными на момент фактического выполнения программы. Это значит, что управляющая программа должна выделять соответствующую структуру данных для хранения принятого набора данных сразу после построения динамического запроса, перед отправкой последнего для выполнения в СУБД. По этим причинам динамическая обработка инструкций DDL/DML намного проще, чем обработка динамических запросов. Большинство современных языков программирования, в частности Visual Basic, Visual C++, PowerBuilder, Delphi, Java и многие другие, скрывают эти сложности от программистов, делегируя самую сложную часть внутренним механизмам языка программирования. Программисту требуется всего лишь динамически собрать символьную строку динамического запроса и присвоить ее соответствующей переменной (часто предопределенной в классе). Построение и обработка динамических запросов вручную уже практически не используются, поэтому мы не будем углубляться в детали этого процесса. При желании можете обратиться к документации соответствующего производителя.