//导入系统的类包
import java.awt.*;
import java.sql.*;
import javax.swing.*;
import java.awt.event.*;
public class DeleteFrame extends JFrame implements ActionListener
{
//声明连接数据库对象
//Connection con;
//声明SQL语句对象
//Statement st;
//创建组件对象
JLabel jLabel1=new JLabel("请输入待调走的教师的姓名:");
JTextField jTextField1=new JTextField();
JButton jButton1=new JButton("确认");
//构造方法
public static void main(String[] args){
DeleteFrame dl=new DeleteFrame();
}
public DeleteFrame()
{
try{
//调用初始化方法
jbInit();
}
catch(Exception exception){
exception.printStackTrace();
}
this.setTitle("教师调出");
this.setSize(600,450);
this.setLocationRelativeTo(null);
this.setResizable(false);//运行后窗口大小不能改变
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
//界面初始化方法
private void jbInit() throws Exception
{
//连接数据库
//con=DBConnect.getConn();
//st=con.createStatement();
//框架的布局
this.setLayout(null);
//设置各组件的大小
jLabel1.setFont(new java.awt.Font("隶书",Font.BOLD,20));
jLabel1.setBounds(new Rectangle(180,20,400,30));
jTextField1.setBounds(new Rectangle(200,80,207,41));
jButton1.setBounds(new Rectangle(200,175,205,36));
//添加按钮动作事件
jButton1.addActionListener(this);
//添加组件到面板
this.add(jLabel1);
this.add(jTextField1);
this.add(jButton1);
}
//点击按钮事件
public void actionPerformed(ActionEvent e)
{
//获取用户输入
String name=jTextField1.getText();
//要求用户确认删除
if(JOptionPane.showConfirmDialog(this,"确认要删除吗?")==JOptionPane.YES_OPTION)
{
try{
database.joinDB();
String sql = "delete from teacher where name = '"+name+"';";
//利用消息对话框提示删除操作成功
JOptionPane.showMessageDialog(this,"删除操作成功!");
//清空输入xingming的文本行
jTextField1.setText("");
}
catch(Exception ex){
//利用消息对话框提示不能删除
JOptionPane.showMessageDialog(this,"删除操作执行失败!");
}
}
}
}
------解决方案--------------------
database.joinDB();
String sql = "delete from teacher where name = '"+name+"';";
连接了数据库,没看到数据库的执行语句啊!
楼主是有代码忘写了,还是没有贴上来。
删除前后去数据库看一下,看数据库的数据有没有被删除掉。
打断点跟一下代码,看看哪一步的结果不是自己想要的,分析原因。
------解决方案--------------------
sqL 语句没看到执行啊
Connection conn = _getConnection();
PreparedStatement preStatement = null ;
preStatement = conn.prepareStatement(sql);