java错误:(dberror)268列定义不明确:ROLLNO:第1行第7列(位置7)
我正在尝试使用多个表(基本上是两个表)在SAP HANA中创建一个视图,其中rollNo
是两个表中的主键列,但出现以下错误:
Error: (dberror) 268 - column ambiguously defined: ROLLNO: line 1 col 7 (at pos 7)
我曾尝试使用SQL中的连接概念创建此视图。 以下是DAO类中的方法:
public Response CreatingMultiTableViews()
{
try
{
session=sessionFactory.openSession();
tx=session.beginTransaction();
SQLQuery query=session.createSQLQuery(" create VIEW ABCD As Select rollNo,name,english From ClassOne JOIN ClassTwo ON ClassOne.rollNo= ClassTwo.rollNo");
query.executeUpdate();
response.setStatus("200");
response.setMessage("successfull");
tx.commit();
return response;
}
catch(Exception e)
{
System.out.println(e.getMessage());
response.setStatus("500");
response.setMessage("unsuccessfull");
tx.rollback();
return response;
}
finally
{
session.close();
}
}
这是控制器类中的方法调用。 它将调用负责执行联接和创建相应视图的方法
@RequestMapping(value="/multiView",method=RequestMethod.GET,produces="application/json",consumes="application/json")
public Response CreatingMultiTableViews()
{
return service.CreatingMultiTableViews();
}
该方法应该连接rollNo
列上的两个表,但它显示了上述错误rollNo
列是我正在应用连接操作的两个表的主键
# 1 楼答案
在sql中使用表别名,并使用它们来说明要在SELECT中使用哪一列
rollNo