Разница между оператором и CallableStatement

Опубликовано: 11 Августа, 2021

1. Заявление:
Он используется для доступа к вашей базе данных. Интерфейс операторов не может принимать параметры и полезен, когда вы используете статические операторы SQL во время выполнения. Если вы хотите выполнить SQL-запрос только один раз, этот интерфейс предпочтительнее, чем PreparedStatement.

Пример -

 // Создание объекта утверждения  
Заявление GFG = con.createStatement ();
  
// Выполнение инструкции  
GFG.executeUpdate ("СОЗДАТЬ ТАБЛИЦУ СТУДЕНТА (НОМЕР ИДЕНТИФИКАЦИИ НЕ НУЛЕВОЙ, ИМЯ VARCHAR)");

2. CallableStatement:
Он используется, когда вы хотите использовать хранимые процедуры базы данных. CallableStatement может принимать входные параметры среды выполнения.

Пример -

 // Создание объекта CallableStatement 
CallableStatement GFG = con.prepareCall ("{вызвать anyProcedure (?,?,?)}");
 
// Использование методов GFG.setter () для передачи параметров IN
 
// Использование метода GFG.registerOutParameter () для регистрации параметров OUT
 
// Выполнение CallableStatement
 GFG.execute ();
 
// Используем методы GFG.getter () для получения результата



Разница между заявлением и CallableStatement:

Заявление CallableStatement
Он используется, когда SQL-запрос должен выполняться только один раз. Он используется, когда должны выполняться хранимые процедуры.
Вы не можете передавать параметры во время выполнения. Вы можете передать параметры во время выполнения.
Используется для операторов CREATE, ALTER, DROP. Используется для выполнения функций.
Производительность очень низкая. Производительность лучше, чем Заявление.
Используется для выполнения обычных SQL-запросов. Используется для вызова хранимых процедур.
Это базовый интерфейс. Он расширяет интерфейс PreparedStatement.
Он используется для операторов DDL. Он используется для хранимых процедур.
Мы не можем использовать оператор для чтения двоичных данных .. Мы можем использовать CallableStatement для чтения двоичных данных ..