Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Прямое выполнение — это самый простой способ выполнения инструкции. При отправке инструкции для выполнения источник данных компилирует его в план доступа, а затем выполняет этот план доступа.
Прямое выполнение обычно используется универсальными приложениями, которые создают и выполняют инструкции во время выполнения. Например, следующий код создает инструкцию SQL и выполняет ее один раз:
SQLCHAR *SQLStatement;
// Build a SQL statement.
BuildStatement(SQLStatement);
// Execute the statement.
SQLExecDirect(hstmt, SQLStatement, SQL_NTS);
Прямое выполнение лучше всего подходит для инструкций, которые будут выполняться один раз. Его основной недостаток заключается в том, что инструкция SQL анализируется каждый раз при выполнении. Кроме того, приложение не может получить сведения о результирующем наборе, созданном оператором (если таковой) до тех пор, пока не будет выполнена инструкция; Это возможно, если инструкция подготовлена и выполнена в двух отдельных шагах.
Чтобы выполнить инструкцию напрямую, приложение выполняет следующие действия:
Задает значения любых параметров. Дополнительные сведения см. в разделе "Параметры инструкции" далее в этом разделе.
Вызывает SQLExecDirect и передает строку, содержащую инструкцию SQL.
При вызове SQLExecDirect драйвер:
Изменяет инструкцию SQL для использования грамматики SQL источника данных без анализа инструкции; сюда входит замена escape-последовательностей, рассмотренных в escape-последовательностях в ODBC. Приложение может получить измененную форму инструкции SQL, вызвав SQLNativeSql. Escape-последовательности не заменяются, если задан атрибут инструкции SQL_ATTR_NOSCAN.
Извлекает текущие значения параметров и преобразует их по мере необходимости. Дополнительные сведения см. в разделе "Параметры инструкции" далее в этом разделе.
Отправляет инструкцию и преобразует значения параметров в источник данных для выполнения.
Возвращает все ошибки. К ним относятся последовательное или состояние диагностика, такие как SQLSTATE 24000 (недопустимое состояние курсора), синтаксические ошибки, такие как SQLSTATE 42000 (синтаксическая ошибка или нарушение доступа), а также семантические ошибки, такие как SQLSTATE 42S02 (базовая таблица или представление не найдены).