无法使用 GUI Java 从 MS Access 中删除数据

我无法从我的数据库中删除一行。我在表格和代码中附上了一张照片。下来你可以看到我使用的方法(psmts)。我还将 id 声明为 int 。我尝试了几件事,但到目前为止还没有奏效。有什么办法可以通过插入 ID 来删除一行吗?

http://img4.mukewang.com/63f7399800017dbb06290362.jpg

  package fereastra1;

import java.awt.*;

import javax.swing.*;

import java.awt.event.*;

import java.sql.*;

import java.io.*;

class Fereastra1 extends JFrame implements ActionListener

{

JLabel l1,l2,l3,l4,l5;

JTextField t1,t2,t3,t4,t5;

JButton b1,b2;

public Fereastra1()

{

    ResultSet rs;

    setLayout(new FlowLayout());

    l1=new JLabel("titlu_film");  

    l2=new JLabel("an_film");       

    l3=new JLabel("timp_film");        

    l4=new JLabel("film_limba");

    l5=new JLabel("ID");



    t1=new JTextField(20);  

    t2=new JTextField(10);

    t3=new JTextField(10);

    t4=new JTextField(10);

    t5=new JTextField(10);


    b1=new JButton("ADAUGA");

    b2=new JButton("STERGE");


    add(l1);add(t1);add(l2);add(t2);

    add(l3);add(t3);add(l4);add(t4);add(l5);add(t5);add(b1);add(b2);

    setSize(1000,400);   

    setTitle("Conectivitate");

    setVisible(true);

    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    b1.addActionListener(this);

    b2.addActionListener(this);

}

public void actionPerformed(ActionEvent e)

{

    try{

    Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");

    Connection con=DriverManager.getConnection("jdbc:ucanaccess://D:\\Temp\\film.accdb");

PreparedStatement psmt=con.prepareStatement("INSERT INTO filme (titlu_film,an_film,timp_film,film_limba) VALUES (?,?,?,?)"); 



//HERE I TRIED THE METHOD !!!!!!

PreparedStatement psmts=con.prepareStatement("DELETE FROM filme WHERE film_id=?");



        String nume,data,timp,limba;

        int id;

        nume= t1.getText();

        data= t2.getText();

        timp=t3.getText();

        limba= t4.getText();

        id=Integer.parseInt(t5.getText());

        if(e.getSource()==b1)

    {   

        psmt.setString(1,nume);

        psmt.setString(2,data);

        psmt.setString(3,timp);

        psmt.setString(4,limba);

        psmt.executeUpdate();

    }


弑天下
浏览 111回答 1
1回答

慕少森

我相信位置参考已关闭以进行删除?改变:psmts.setInt(5,id); // psmts delete parameter 5 ??到:psmts.setInt(1,id); // only 1 parameter in the delete prepared statement
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java