long executeInsertAndGetSequence(String queryName, List<Parameter> parameters, String tableName, String primaryKeyFieldName, String sequenceName) { Validate.argumentsAreNotNull(queryName, parameters, tableName, primaryKeyFieldName, sequenceName); if (dialect.supportsSequences()) { long newId = keyGenerator.generateKey(sequenceName, this); Insert insertQuery = new Insert( queryName, Lists.add(parameters, new Parameter.LongParameter(primaryKeyFieldName, newId)), tableName); execute(insertQuery); return newId; } else { Insert insertQuery = new Insert(queryName, parameters, tableName); execute(insertQuery); return keyGenerator.getKeyFromLastInsert(this); } }
long executeInsertAndGetSequence(String queryName, List<Parameter> parameters, String tableName, String primaryKeyFieldName, String sequenceName) { Validate.argumentsAreNotNull(queryName, parameters, tableName, primaryKeyFieldName, sequenceName); if (dialect.supportsSequences()) { long newId = keyGenerator.generateKey(sequenceName, this); Insert insertQuery = new Insert( queryName, Lists.add(parameters, new Parameter.LongParameter(primaryKeyFieldName, newId)), tableName); execute(insertQuery); return newId; } else { Insert insertQuery = new Insert(queryName, parameters, tableName); execute(insertQuery); return keyGenerator.getKeyFromLastInsert(this); } }