Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java sqlException:没有这样的列:employID_Java_Sqlite_Jdbc - Fatal编程技术网

Java sqlException:没有这样的列:employID

Java sqlException:没有这样的列:employID,java,sqlite,jdbc,Java,Sqlite,Jdbc,这是我的代码,我得到以下错误“java.sql.sqlException:没有这样的列:employID”我已经重新检查了我的db表列名是否正确employID没有问题,但仍然得到相同的错误请帮助我尝试使用netbeans IDE和sqlite数据库将基于第一列的表数据加载到文本框中 private void tableEmployeeMouseClicked(java.awt.event.MouseEvent evt) {

这是我的代码,我得到以下错误“
java.sql.sqlException
:没有这样的列:employID”我已经重新检查了我的db表列名是否正确
employID
没有问题,但仍然得到相同的错误请帮助我尝试使用netbeans IDE和sqlite数据库将基于第一列的表数据加载到文本框中

private void tableEmployeeMouseClicked(java.awt.event.MouseEvent evt) {                                           
    try{ 
    int row=tableEmployee.getSelectedRow();
     String tableClick=(tableEmployee.getModel().getValueAt(row, 0).toString());
     String sql="SELECT * FROM employeeInfo WHERE employID=' "+tableClick+" ' ";

     pst=conn.prepareStatement(sql);
     rs=pst.executeQuery();
     if(rs.next()){
         String add1=rs.getString("employID");
         empid.setText(add1);
         String bdd=rs.getString("name");
         name.setText(bdd);
         String cdd=rs.getString("surname");
         surname.setText(cdd);
         String ddd=rs.getString("age");
         age.setText(ddd);     
     }         
     }
    catch(Exception e){
        JOptionPane.showMessageDialog(null,e);
    }
n、 b.设置了我的数据库中的
employID
列 对于
INTEGER
,我的代码中的该查询或我的查询是否与错误类型有任何关联。。 谢谢

编辑:DDL语句

CREATE TABLE "employeeInfo" (
"employID " INTEGER PRIMARY KEY NOT NULL , 
"name" CHAR, "surname" CHAR, 
"age" INTEGER, "username" VARCHAR, "password" VARCHAR)

从错误中可以明显看出,resultset没有名为“employID”的列。要解决此问题,您可以执行以下任一操作: 1.检查resultset元数据并查看正在获取的列名。
2.或者使用resultset.getString()方法中的列位置来获取值,并验证是否获取employID值。

首先要解决的问题是:不要像那样构建SQL。改用参数化SQL。但我强烈怀疑你真的没有一个专栏叫做。。。有没有可能不同的情况?(我不希望它区分大小写,但奇怪的事情发生了。)你能粘贴数据库的结构吗?(
SHOW CREATE TABLE employeeInfo
)创建表“employeeInfo”(“employID”整型主键不为NULL,“name”CHAR、“姓氏”CHAR、“age”INTEGER、“username”VARCHAR、“password”VARCHAR)@JonSkeet,你能给我一个如何参数化它的例子吗?请检查我的数据库结构,如上图所示。在命令窗口中启动
sqlite3
,然后执行
。schema employeeInfo
。谢谢。是的,我跟踪了它,发现列名“employID”类似于“employID”空格键必须通过简单地重新创建表格来清除它们。。。