aliasName); CreateFunctionAlias command = new CreateFunctionAlias(session, getSchema()); command.setForce(force); command.setAliasName(aliasName); command.setIfNotExists(ifNotExists); command.setDeterministic(readIf("DETERMINISTIC")); command.setBufferResultSetToLocalTemp(!readIf("NOBUFFER")); if (readIf("AS")) { command.setSource(readString()); } else { read("FOR"); command.setJavaClassMethod(readUniqueIdentifier());
@Override public int update() { session.commit(true); session.getUser().checkAdmin(); Database db = session.getDatabase(); if (getSchema().findFunction(aliasName) != null) { if (!ifNotExists) { throw DbException.get( ErrorCode.FUNCTION_ALIAS_ALREADY_EXISTS_1, aliasName); } } else { int id = getObjectId(); FunctionAlias functionAlias; if (javaClassMethod != null) { functionAlias = FunctionAlias.newInstance(getSchema(), id, aliasName, javaClassMethod, force, bufferResultSetToLocalTemp); } else { functionAlias = FunctionAlias.newInstanceFromSource( getSchema(), id, aliasName, source, force, bufferResultSetToLocalTemp); } functionAlias.setDeterministic(deterministic); db.addSchemaObject(session, functionAlias); } return 0; }
private CreateFunctionAlias parseCreateFunctionAlias(boolean force) throws SQLException { boolean ifNotExists = readIfNoExists(); CreateFunctionAlias command = new CreateFunctionAlias(session); command.setForce(force); String name = readUniqueIdentifier(); if (isKeyword(name) || Function.getFunction(database, name) != null || Aggregate.getAggregateType(name) >= 0) { throw Message.getSQLException(ErrorCode.FUNCTION_ALIAS_ALREADY_EXISTS_1, name); } command.setAliasName(name); command.setIfNotExists(ifNotExists); read("FOR"); command.setJavaClassMethod(readUniqueIdentifier()); return command; }
public int update() throws SQLException { session.commit(true); session.getUser().checkAdmin(); Database db = session.getDatabase(); if (db.findFunctionAlias(aliasName) != null) { if (!ifNotExists) { throw Message.getSQLException(ErrorCode.FUNCTION_ALIAS_ALREADY_EXISTS_1, aliasName); } } else { int id = getObjectId(false, true); FunctionAlias functionAlias = new FunctionAlias(db, id, aliasName, javaClassMethod, force); db.addDatabaseObject(session, functionAlias); } return 0; }
private CreateFunctionAlias parseCreateFunctionAlias(boolean force) { boolean ifNotExists = readIfNotExists(); String aliasName = readIdentifierWithSchema(); if (isKeyword(aliasName) || Function.getFunction(database, aliasName) != null || getAggregateType(aliasName) >= 0) { throw DbException.get(ErrorCode.FUNCTION_ALIAS_ALREADY_EXISTS_1, aliasName); } CreateFunctionAlias command = new CreateFunctionAlias(session, getSchema()); command.setForce(force); command.setAliasName(aliasName); command.setIfNotExists(ifNotExists); command.setDeterministic(readIf("DETERMINISTIC")); command.setBufferResultSetToLocalTemp(!readIf("NOBUFFER")); if (readIf("AS")) { command.setSource(readString()); } else { read("FOR"); command.setJavaClassMethod(readUniqueIdentifier()); } return command; }
@Override public int update() { session.commit(true); session.getUser().checkAdmin(); Database db = session.getDatabase(); if (getSchema().findFunction(aliasName) != null) { if (!ifNotExists) { throw DbException.get( ErrorCode.FUNCTION_ALIAS_ALREADY_EXISTS_1, aliasName); } } else { int id = getObjectId(); FunctionAlias functionAlias; if (javaClassMethod != null) { functionAlias = FunctionAlias.newInstance(getSchema(), id, aliasName, javaClassMethod, force, bufferResultSetToLocalTemp); } else { functionAlias = FunctionAlias.newInstanceFromSource( getSchema(), id, aliasName, source, force, bufferResultSetToLocalTemp); } functionAlias.setDeterministic(deterministic); db.addSchemaObject(session, functionAlias); } return 0; }
private CreateFunctionAlias parseCreateFunctionAlias(boolean force) { boolean ifNotExists = readIfNotExists(); String aliasName = readIdentifierWithSchema(); if (isKeyword(aliasName) || Function.getFunction(database, aliasName) != null || getAggregateType(aliasName) >= 0) { throw DbException.get(ErrorCode.FUNCTION_ALIAS_ALREADY_EXISTS_1, aliasName); } CreateFunctionAlias command = new CreateFunctionAlias(session, getSchema()); command.setForce(force); command.setAliasName(aliasName); command.setIfNotExists(ifNotExists); command.setDeterministic(readIf("DETERMINISTIC")); command.setBufferResultSetToLocalTemp(!readIf("NOBUFFER")); if (readIf("AS")) { command.setSource(readString()); } else { read("FOR"); command.setJavaClassMethod(readUniqueIdentifier()); } return command; }
@Override public int update() { session.commit(true); session.getUser().checkAdmin(); Database db = session.getDatabase(); if (getSchema().findFunction(aliasName) != null) { if (!ifNotExists) { throw DbException.get( ErrorCode.FUNCTION_ALIAS_ALREADY_EXISTS_1, aliasName); } } else { int id = getObjectId(); FunctionAlias functionAlias; if (javaClassMethod != null) { functionAlias = FunctionAlias.newInstance(getSchema(), id, aliasName, javaClassMethod, force, bufferResultSetToLocalTemp); } else { functionAlias = FunctionAlias.newInstanceFromSource( getSchema(), id, aliasName, source, force, bufferResultSetToLocalTemp); } functionAlias.setDeterministic(deterministic); db.addSchemaObject(session, functionAlias); } return 0; }