StringBuffer sql = new StringBuffer("{ call ? := mailmerge_package.getLetters(?, ?, ?)}");
Je sais que c'est comme une instruction sql mais il n'y a pas d'appel en SQL.Qu'est-ce que cela signifie? (java, base de données)
Quelqu'un peut-il me expliquer ce que cela signifie et comment se fait-il d'être compris par Java
EDIT:
import oracle.jdbc.driver.OracleTypes;
//omitted code
CallableStatement cs = null;
ResultSet rs = null;
StringBuffer sql = new StringBuffer("{ call ? := mailmerge_package.getLetters(?, ?, ?)}");
try {
cs = conn.prepareCall(sql.toString());
cs.registerOutParameter(1, OracleTypes.CURSOR);
DAOUtils.setLong(cs, 3, checklistAnsMastId);
DAOUtils.setLong(cs, 2, workEntityId);
cs.setLong(4, patientId);
DAOUtils.setLong(cs, 5, encounterId);
cs.setString(6, encounterType);
cs.execute();
rs = (ResultSet)cs.getObject(1);
Nous aurons besoin de contexte. Nous n'avons aucune idée de la technologie d'accès aux données que vous utilisez. –
c'est un oracle db – code511788465541441
@ user521180: Ce n'est pas la technologie data * access * - c'est la technologie * storage *. Vous avez posté du code qui crée un StringBuffer, mais vous n'avez rien dit de la façon dont il est utilisé. –