Java 使用Netbeans 7.01中的表单插入数据库
我正在用java做一个单独的项目。我想将数据插入我的数据库…但我的程序正在成功运行,没有任何错误,但当插入数据并提交我的数据时,它将出现如下错误:java.sql.SQLException:无法使用executeQuery()发出数据操作语句。这是我的代码:\ 你能为解决这个问题做些什么Java 使用Netbeans 7.01中的表单插入数据库,java,swing,Java,Swing,我正在用java做一个单独的项目。我想将数据插入我的数据库…但我的程序正在成功运行,没有任何错误,但当插入数据并提交我的数据时,它将出现如下错误:java.sql.SQLException:无法使用executeQuery()发出数据操作语句。这是我的代码:\ 你能为解决这个问题做些什么 private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
if (evt.getSource() == jButton1)``
{
int x = 0;
String s1 = jTextField1.getText().trim();
String s2 = jTextField2.getText();
char[] s3 = jPasswordField1.getPassword();
char[] s4 = jPasswordField2.getPassword();
String s8 = new String(s3);
String s9 = new String(s4);
String s5 = jTextField5.getText();
String s6 = jTextField6.getText();
String s7 = jTextField7.getText();
if(s8.equals(s9))
{
try{
File image = new File(filename);
FileInputStream fis = new FileInputStream(image);
ByteArrayOutputStream bos = new ByteArrayOutputStream();
byte buf[] = new byte[1024];
for (int readNum; (readNum = fis.read(buf)) != -1;) {
bos.write(buf, 0, readNum);
}
cat_image = bos.toByteArray();
PreparedStatement ps = conn.prepareStatement("insert into reg values(?,?,?,?,?,?,?)");
ps.setString(1,s1);
ps.setString(2,s2);
ps.setString(3,s8);
ps.setString(4,s5);
ps.setString(5,s6);
ps.setString(6,s7);
ps.setBytes(7,cat_image);
rs = ps.executeQuery();
if(rs.next())
{
JOptionPane.showMessageDialog(null,"Data insert Succesfully");
}else
{
JOptionPane.showMessageDialog(null,"Your Password Dosn't match" ,"Acces dinied",JOptionPane.ERROR_MESSAGE);
}
}catch(Exception e)
{
System.out.println(e);
}
}
使用ps.executeUpdate()
或ps.execute()
从
执行此PreparedStatement对象中的SQL语句,该对象必须是SQL数据操作语言(DML)语句,例如
插入、更新或删除;或者一个不返回任何内容的SQL语句,
例如DDL语句
从
执行此PreparedStatement对象中的SQL语句
可以是任何类型的SQL语句。一些准备好的声明返回
多重结果;execute方法处理这些复杂语句
以及由方法处理的更简单的语句形式
executeQuery和executeUpdate。execute方法将返回一个布尔值
指出第一个结果的形式。您必须调用该方法中的任何一个
获取结果的getResultSet或getUpdateCount;你必须打电话
getMoreResults以移动到任何后续结果
然后正确地修改代码
int rowsAffected = ps.executeUpdate();
JOptionPane.showMessageDialog(null,"Data Rows Inserted "+ rowsAffected);
您还必须关闭finally块中的流和连接。由于错误的sql语句而引发SQLException。插入字符串和整数值时可能出现语法错误。在值之后检查sql语句。整数元素周围应该有“1-0”,字符串元素周围应该有“some value”。使用
ps.executeUpdate()
或者只使用ps.execute()
。Kk我已经成功地完成了tnx ur应答。单击左侧帖子下的绿色复选标记。(我想它就在箭头的正下方)。这样,这篇文章就解决了。@nachokk tnx它为甲烷做了很多工作,我已经做了很多了……它正在成功地工作