2017-04-17 2 views
0

MySQL에서 테이블 A에 데이터를 삽입하기 위해 java (NetBeans 사용)로 프로젝트를 만들었습니다.다른 테이블에 열이있는 테이블에 삽입

표 A에는 기본 키 pID가 있으며 11 개의 열이 있지만 테이블 A은 테이블 B의 외래 키 열이어야합니다. MySQL에 테이블 A에 행을 삽입하려고하면 행이 삽입됩니다.

그러나 Java에서 행을 삽입하려고하면 (예 : usp_em, MySQL에서 만든 절차, 자동 증가 된 열은 포함되지 않음) 작동하지 않습니다. 하지 자바에서 내가 MySQL을 직접 행을 삽입 할 수있는 이유

CallableStatement cs = conn.prepareCall("call usp_em(?,?,?,?,?,?,?,?,?)"); 

그래서 내가 이해하지 않지만 : 나는 이런 식으로 절차의 전화를? MySQL JDBC 드라이버는 라이브러리로도 사용됩니다!

+0

당신은 당신의 코드를 공유 할 수주십시오? –

답변

1
당신은 예를 들어 {} 사이에 절차를 넣어야 할

:

String query = "{call usp_em(?,?,?,?,?,?,?,?,?)}"; 
//--------------^------------------------------^ 
CallableStatement statement = connection.prepareCall(query); 
statement.setString(1, param1); 
statement.setString(2, param2); 
statement.setString(3, param3); 
... 
statement.execute(); 
관련 문제