📄 jdbcmodifydemo.java
字号:
//JDBC插入、修改和删除演示
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.sql.*;
public class JdbcModifyDemo extends JFrame implements ActionListener
{
JPanel pnlMain;
JLabel lblName,lblPass;
JTextField txtName,txtPass;
JButton btnInsert,btnSave,btnUpdate,btnDelete;
//构造函数
public JdbcModifyDemo()
{
super("JDBC插入、修改和删除演示");
pnlMain=new JPanel();
lblName=new JLabel("用户名:");
lblPass=new JLabel("密码:");
txtName=new JTextField(16);
txtPass=new JTextField(16);
btnInsert=new JButton("插入");
btnInsert.addActionListener(this);
btnSave=new JButton("保存");
btnSave.setEnabled(false);
btnSave.addActionListener(this);
btnUpdate=new JButton("修改");
btnUpdate.addActionListener(this);
btnDelete=new JButton("删除");
btnDelete.addActionListener(this);
pnlMain.add(lblName);
pnlMain.add(txtName);
pnlMain.add(lblPass);
pnlMain.add(txtPass);
pnlMain.add(btnInsert);
pnlMain.add(btnSave);
pnlMain.add(btnUpdate);
pnlMain.add(btnDelete);
setContentPane(pnlMain);
setSize(250,150);
setVisible(true);
}
//按钮事件处理
public void actionPerformed(ActionEvent ae)
{
if (ae.getSource()==btnInsert)
initComponent();
if (ae.getSource()==btnSave)
saveRecord();
if (ae.getSource()==btnUpdate)
updateRecord();
if (ae.getSource()==btnDelete)
{
int intChoice=JOptionPane.showConfirmDialog
(null,"真的要删除该记录吗?","确认删除",JOptionPane.YES_NO_OPTION);
if (intChoice==JOptionPane.YES_OPTION)
deleteRecord();
}
}
public Connection openDatabase()
{
String url = "jdbc:odbc:HappyChat";
try
{
//装入驱动器jdbc-odbc bridge driver
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//建立连接
Connection conn=DriverManager.getConnection(url,"sa","");
return conn;
}
catch(Exception e)
{
JOptionPane.showMessageDialog(null,"连接数据库失败!");
return null;
}
}
//组件初始化
public void initComponent()
{
txtName.setText("");
txtPass.setText("");
btnSave.setEnabled(true);
}
//使用PreparedStatement插入记录
public void saveRecord()
{
try
{
PreparedStatement psm=openDatabase().prepareStatement("Insert users(U_Name,U_Pass) values(?,?)");
psm.setString(1,txtName.getText());
psm.setString(2,txtPass.getText());
psm.executeUpdate();
JOptionPane.showMessageDialog(null,"记录保存成功!");
psm.close();
}
catch(Exception e)
{
JOptionPane.showMessageDialog(null,"记录插入失败!");
}
}
//使用Statement修改记录
public void updateRecord()
{
try
{
Statement sm=openDatabase().createStatement();
String strUpdate="update users set U_pass='"+txtPass.getText()
+"' where U_name='"+txtName.getText()+"'";
sm.executeUpdate(strUpdate);
JOptionPane.showMessageDialog(null,"记录修改成功!");
sm.close();
}
catch(Exception e)
{
JOptionPane.showMessageDialog(null,"记录修改失败!");
}
}
//使用CallableStatement调用存储过程删除记录
public void deleteRecord()
{
try
{
CallableStatement csm=openDatabase().prepareCall("{call delRecord(?)}");
csm.setString(1,txtName.getText());
csm.execute();
JOptionPane.showMessageDialog(null,"记录删除成功!");
csm.close();
}
catch(Exception e)
{
JOptionPane.showMessageDialog(null,"记录删除失败!");
}
}
public static void main(String args[])
{
new JdbcModifyDemo();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -