2
사용자 이름을 반환하는 저장 프로 시저가 있습니다. java (EclipseIDE)에서 저장 프로 시저를 호출합니다. 저장 프로 시저의 반환 값은 Null입니다. 이것을 피하는 방법 Null
값.
이 내 저장 프로 시저입니다저장 프로 시저에서 Null 값이 반환됩니다.
USE `employee`;
DROP procedure IF EXISTS `add1`;
DELIMITER $$
USE `employee`$$
CREATE DEFINER=`root`@`localhost` PROCEDURE `add1`(IN UserId int,
IN UserFirstName varchar(50),
IN UserLastName varchar(50),
IN Education varchar(50),
IN MarksInME int,
IN MarksInBE int,
IN MarksInPUC int,
IN Gender varchar(50),
OUT UserName varchar(50))
BEGIN
declare varName varchar(50);
select UserFirstName into varName from User where UserId=3516;
set UserName=varName;
insert into user(UserId,UserFirstName,UserLastName,Education,MarksInME,MarksInBE,MarksInPUC,Gender)
values(UserId,UserFirstName,UserLastName,Education,MarksInME,MarksInBE, MarksInPUC,Gender);
END$$
DELIMITER ;
내가 저장 프로 시저 호출 오전 :
java.sql.CallableStatement cStmt = conn.prepareCall("{call add1(?,?,?,?,?,?,?,?,?)}");
cStmt.setInt(1,3541);
cStmt.setString(2,"pALLAVI");
cStmt.setString(3,"K");
cStmt.setString(4,"BE");
cStmt.setInt(5,0);
cStmt.setInt(6,60);
cStmt.setInt(7,600);
cStmt.setString(8,"[email protected]");
cStmt.registerOutParameter(9, java.sql.Types.VARCHAR);
cStmt.execute();
userName = cStmt.getString(9);
나는 그것의 널 (null)로 인쇄 사용자 이름을 인쇄하려고?