java - java.sql.sqlexception 插入时列索引无效
问题描述
我有一个在数据库中运行良好的 sql 语句,并且在数据集和查询对话框中没有显示任何错误,但是当我点击“读取字段”按钮时,它会抛出错误“列索引无效”
我的 sql 代码
--Employees TABLE
create table employee1 (
ssn number(4) PRIMARY KEY,
ename VARCHAR2(20),
eposition VARCHAR2(30),
dname VARCHAR2(30) ,
salary number (8) ,
phoneNo number(16) not null,
dateOfBirth date not null,
grade VARCHAR(1),
CONSTRAINT Dname_FK1 FOREIGN KEY(dname)
REFERENCES department1(dname) ON DELETE CASCADE,
CONSTRAINT salgrade_FK1 FOREIGN KEY(grade)
REFERENCES salgrade1(grade) ON DELETE CASCADE
);
我的java代码
Connection conn=DriverManager.getConnection(url,user,pass);
String sql = "insert into employee1(ssn,ename,eposition,dname,salary, phoneNo, dateOfBirth, grade) VALUES (?,'?','?','?',?,?,'?','?')";
PreparedStatement stmt=conn.prepareStatement(sql);
stmt.setString(1, ssn.getText());
stmt.setString(2, eename.getText());
stmt.setString(3, eepos.getText());
stmt.setString(4, dname.getText());
stmt.setString(5, salary.getText());
stmt.setString(6, phone.getText());
stmt.setString(7, dob.getText());
stmt.setString(8, garde1.getText());
//stmt.executeUpdate();
conn.setAutoCommit(false);
stmt.executeUpdate();
int x = JOptionPane.showConfirmDialog(null, "DO YOU WANT TO SAVE ?", "SELECT YES OR NO",
JOptionPane.YES_NO_OPTION);
if (x == JOptionPane.YES_OPTION) {
conn.commit();
JOptionPane.showMessageDialog(null, "RECORD SAVED");
} else {
conn.rollback();
JOptionPane.showMessageDialog(null, "NO RECORDS ARE SAVED");
}
stmt.close();
conn.close();
} catch (SQLException e1) {
e1.printStackTrace();
}
}
});
任何想法 ?
解决方案
推荐阅读
- scala - ScalaTest 断言集合包含一个类型
- javascript - 如何为表格单元格的内部 html 创建 OnClick 事件
- rest - Google Calendar REST API 不返回标题和其他事件字段
- web-scraping - 仅将 IMAGE 函数添加到通过 IMPORTXML 收集的一列数据中
- javascript - JS:将页面动画保存到 mp4
- python - Python中有没有一种方法可以在线性回归分析中获取分布残差?
- php - Wordpress 登录重定向影响管理对话框
- javascript - 类型错误:res.response 未定义
- mongodb - MongoDB Compass:选择不同的字段值
- python - 返回范围内所有单元格地址的列表