MySQLIntegrityConstraintViolationException:where子句中的列'adno'不明确

时间:2014-01-25 14:23:02

标签: mysql sql

我想从两个表studentinfostudentmarks获取数据。

我将Join与where子句一起使用,但它会显示:

ConstraintViolationException: Column 'adno' in where clause is ambiguous

这是我的代码段

String adno = jTextField10.getText();

String s = "Select si.n,
                   si.class,
                   sm.acc,
                   sm.bst,
                   sm.eco from si Left Join sm 
                   ON si.adno = sm.adno 

                   where adno ='" + adno + "';";

2 个答案:

答案 0 :(得分:2)

您没有说明应该使用哪个adnoWHERE子句。

where adno

代替where studentinfo.adno

答案 1 :(得分:2)

一名优秀的程序员,编写常规,可读,可扩展,评论和缩进的代码片段。

在你的情况下,这样做,(主要使用别名,并且是si.adno解决它)

SELECT si.name,
       si.class,
       sm.acc,
       sm.bst,
       sm.eco 
FROM studentinfo si 
LEFT JOIN studentmarks sm 
ON si.adno = sm.adno 
WHERE si.adno ='" + adno + " //qualifying the where condition