Я получаю исключение SQL: индекс параметра выходит за пределы диапазона (1 > количество параметров, которое равно 0) ошибка
cstm=conn.prepareCall("{call ekleSP}");
cstm.setInt(1, Integer.parseInt(tb_1.getText()));
cstm.setString(2, tb_2.getText());
cstm.setString(3, tb_3.getText());
cstm.setString(4, tb_4.getText());
cstm.setString(5, tb_5.getText());
cstm.execute();
Ekle означает добавить, что идет как идентификатор, имя, фамилия, номер телефона, пол и я, используя эту хранимую процедуру:
CREATE DEFINER=`root`@`localhost` PROCEDURE `ekleSP`(IN id INT(11),IN
uye_adi VarChar(45),
IN uye_soyadi VarChar(45), IN uye_tel VarChar(11),IN cinsiyet VarChar(5))
BEGIN
INSERT into tbluyeler(id,uye_adi,uye_soyadi,uye_tel,cinsiyet) values
('?','?','?','?','?');
END
1 ответ
Я понял, что вы, ребята, имеете в виду, я исправил свой звонок так:
cstm=conn.prepareCall("{call ekleSP(?,?,?,?,?)}");
И я исправил мою процедуру, как это, чтобы отправить то, что я получаю из текстовых полей в tbluyeler
CREATE DEFINER=`root`@`localhost` PROCEDURE `ekleSP`(IN id INT(11),IN
uye_adi VarChar(45),
IN uye_soyadi VarChar(45), IN uye_tel VarChar(11),IN uye_cinsiyet
VarChar(5))
BEGIN
INSERT into tbluyeler(id,uye_adi,uye_soyadi,uye_tel,uye_cinsiyet) values
(id,uye_adi,uye_soyadi,uye_tel,uye_cinsiyet);
END