code: private String processProcedureName(String dbProductName, String procedureName) {
          String result = null;
  
          if (procedureName != null) {
              if ("Microsoft SQL Server".equals(dbProductName) == true || "Sybase".equals(dbProductName) == true) {
                  if ("Microsoft SQL Server".equals(dbProductName) == true && procedureName.indexOf(";") > 1) {
                      result = procedureName.substring(0, procedureName.indexOf(";")).toUpperCase();
                  } else if (procedureName.length() > 1 && procedureName.startsWith("@") == true) {
                      result = procedureName.substring(1).toUpperCase();
                  } else {
                      result = procedureName.toUpperCase();
                  }
              } else if ("PostgreSQL".equals(dbProductName) == true) {
                  result = procedureName.toLowerCase();
              } else {
                  result = procedureName.toUpperCase();
              }
          }
  
          return result;
      }
docs: Processes Procedure/Function name so it would be compatible with database
  Also is responsible for cleaning procedure name returned by DatabaseMetadata
  
  @param dbProductName short database name
  @param procedureName Stored Procedure/Function
  @return processed Procedure/Function name