powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Передача входных параметров процедуре из Java
4 сообщений из 4, страница 1 из 1
Передача входных параметров процедуре из Java
    #35602986
anjey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день...
У меня DB2 express-c 9.1.0 на Linux-е
есть хранимая процедура:
Код: plaintext
1.
2.
3.
4.
5.
create procedure proctest3(in name varchar( 50 ), out id bigint)
 language sql
begin
 set id=nextval for level_0;
 insert into test.t(test.t.id, test.t.name) values(id, name);
end

пытаюсь вызвать её из приложения на java

Код: plaintext
1.
2.
3.
4.
5.
6.
      
 Class.forName("com.ibm.db2.jcc.DB2Driver");
 Connection con=DriverManager.getConnection("jdbc:db2://localhost:50000/tdb","username","password");
 CallableStatement cst=con. prepareCall("{call test.proctest3(?,?)}");
 cst.setString("name", data);
 cst.registerOutParameter( 1 ,java.sql.Types.VARCHAR);
 cst.executeUpdate();

в строке 4: name - это имя входного параметра процедуры, а data - переменная типа String

получаю сообщение

err2:[ibm][db2][jcc][10183][10220] вызван метод JDBC3: Метод пока не поддерживается

ругается на строку cst.setString("id", data);

Это значит, что передавать входные параметры процедуре через JDBC-драйвер идущий вместе с Express-C не судьба ? или я вызов не правильно делаю ?

p.s.
файл jdbc драйвера: db2jcc.jar (1973658 байт)
...
Рейтинг: 0 / 0
Передача входных параметров процедуре из Java
    #35603069
mustaccio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сомневаюсь, что обращение к параметрам по имени будет работать в ДБ2.

Код: plaintext
1.
cst.setString([color=red] 1 [/color], data);
cst.registerOutParameter([color=red] 2 [/color],java.sql.Types.VARCHAR)
...
Рейтинг: 0 / 0
Передача входных параметров процедуре из Java
    #35603422
обращаться к параметрам надо по его номеру (начиная с 1-го)

cstmt1.setInt( 1, data );
cstmt1.registerOutParameter( 2, java.sql.Types.VARCHAR );
boolean resultCSP = cstmt1.execute();
...
Рейтинг: 0 / 0
Передача входных параметров процедуре из Java
    #35614083
anjey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо ! разобрался :)
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / Передача входных параметров процедуре из Java
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]