java – SQLException:没有这样的列

我是新成员.我想,我一直在与sqlitejdbc挣扎.我从java程序中查询了sqlite数据库.我得到了以上异常.我的疑问是select * from ( person as p inner join company as c on p.p_id=c.p_id) inner join contact as ct on...

我是新成员.我想,我一直在与sqlitejdbc挣扎.
我从java程序中查询了sqlite数据库.我得到了以上异常.
我的疑问是

select * 
from (  person as p 
        inner join company as c on p.p_id=c.p_id
     ) 
     inner join contact as ct on p.p_id=ct.p_id 
 where p.p_id=?;

当我通过放置p.p_id =’1’而不是p.p_id =?将查询放在navicatLite编辑器上时?我没事它向我展示了正确的价值观

但是从我的java程序.我得到了这个例外.

Exception in thread "main" java.sql.SQLException: no such column: p.p_id
        at org.sqlite.DB.throwex(DB.java:288)
        at org.sqlite.NativeDB.prepare(Native Method)
        at org.sqlite.DB.prepare(DB.java:114)
        at org.sqlite.PrepStmt.(PrepStmt.java:37)
        at org.sqlite.Conn.prepareStatement(Conn.java:231)
        at org.sqlite.Conn.prepareStatement(Conn.java:224)
        at org.sqlite.Conn.prepareStatement(Conn.java:213)
        at programTest.test.main(test.java:19)
Java Result: 1

我确定存在person表和p_id字段.我在这个网站上搜索过这类问题,但是我发现了一个与ruby相关的问题,而不是java.我不知道出了什么问题.

我的java程序是

import java.sql.*;

/**
 *
 * @author Htet 101
 */
public class test {

    public static void main(String[] args) throws Exception {
        Class.forName("org.sqlite.JDBC");
        Connection conn =
                DriverManager.getConnection("jdbc:sqlite://C://Users//Htet 101//Documents//addressbook.s3db");
        PreparedStatement stat = conn.prepareStatement("select * from (person as p inner join company as c on p.p_id=c.p_id) inner join contact as ct on p.p_id=ct.p_id where p.p_id=?;");
        stat.setInt(1, 1);

        ResultSet rs = stat.executeQuery();
        while (rs.next()) {
            System.out.print("Name : " + rs.getString("p_name") + " ");
        }
        rs.close();
        conn.close();
    }
}

我正在使用NetBeans 6.9.1,SQLite 3.7.8,SQLiteJDBC v056进行开发.

解决方法:

我不是很确定,但我认为如果从From中删除括号,它应该可以工作:
 选择*来自
 人为p
  内部联接公司作为c在p.p_id = c.p_id上
内部联接联系人作为ct在p.p_id = ct.p_id,其中p.p_id =?;

本文标题为:java – SQLException:没有这样的列

基础教程推荐