2016-07-06 10 views
0

検索クエリに基づいてデータベースから別のレコードを返そうとしています。これは、上記の試みで私の試みorg.hibernate.exception.SQLGrammarException:ResultSetを抽出できませんでした - 検索クエリから一致するレコードを返します

@SuppressWarnings("unchecked") 
    @Override 
    public List<Employee> getAllEmployees(String employeeName) { 
     String query = "SELECT e. FROM Employees e WHERE e.name like '%"+ employeeName +"%'"; 
     List<Object[]> employeeObjects = hibernateUtil.fetchAll(query); 
     List<Employee> employees = new ArrayList<Employee>(); 
     for(Object[] employeeObject: employeeObjects) { 
      Employee employee = new Employee(); 
      long id = ((BigInteger) employeeObject[0]).longValue();   
      int age = (int) employeeObject[1]; 
      String name = (String) employeeObject[2]; 
      float salary = (float) employeeObject[3]; 
      employee.setId(id); 
      employee.setName(name); 
      employee.setAge(age); 
      employee.setSalary(salary); 
      employees.add(employee); 
     } 
     System.out.println(employees); 
     return employees; 
    } 

で、私はこのエラー

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM Employees e WHERE e.name like '%john%'' at line 1 
    sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 

を持ってどのように私は、「

答えて

0

一意のレコードを選択し、電子を選択するために、私のクエリを変更ください。従業員Eからwhere e.name like "=> SELECT後にドット(。)があります。それは従業員からのSELECT DISTINCT e.name FROMである必要があります....

+0

ありますか? – Blaze

関連する問題