package source;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.sql.*;
public class JdbcConnection implements ActionListener
{
// Connection conn;
JButton jb1=new JButton("插入");
JButton jb2=new JButton("保存");
JTextField jt1=new JTextField(8);
JTextField jt2=new JTextField(8);
JTextField jt3=new JTextField(8);
JTextField jt4=new JTextField(8);
JTextField jt5=new JTextField(8);
public JdbcConnection()
{
JFrame jf=new JFrame("插入框架");
jf.setBounds(400,400,400,400);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel jp=new JPanel();
JLabel jl1=new JLabel("请输入要插入的学号:");
JLabel jl2=new JLabel("请输入要插入的姓名:");
JLabel jl3=new JLabel("请输入要插入的性别:");
JLabel jl4=new JLabel("请输入要插入的年龄:");
JLabel jl5=new JLabel("请输入要插入的院系:");
jb1.addActionListener(this);
jb2.addActionListener(this);
jp.add(jl1);
jp.add(jt1);
jp.add(jl2);
jp.add(jt2);
jp.add(jl3);
jp.add(jt3);
jp.add(jl4);
jp.add(jt4);
jp.add(jl5);
jp.add(jt5);
jp.add(jb1);
jp.add(jb2);
jf.add(jp);
jf.setVisible(true);
}
public void clearsave()
{
jt1.setText("");
jt2.setText("");
jt3.setText("");
jt4.setText("");
jt5.setText("");
jb2.setEnabled(true);
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==jb1)
clearsave();
if(e.getSource()==jb2)
saveRecord();
}
public Connection con()
{
String url="jdbc:odbc:source";
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection(url);
return con;
}
catch(Exception e)
{
System.out.println("error");
return null;
}
}
public void saveRecord()
{
try
{
PreparedStatement psm=con().prepareStatement("insert into 学生表Students values(?,?,?,?,?)");
psm.setString(1,jt1.getText());
psm.setString(2,jt2.getText());
psm.setString(3,jt3.getText());
psm.setString(4,jt4.getText());
psm.setString(5,jt5.getText());
psm.executeUpdate();
JOptionPane.showMessageDialog(null,"记录保存成功!");
psm.close();
}
catch(Exception e)
{
JOptionPane.showMessageDialog(null,"记录插入失败!");
}
}
public static void main(String args[])
{
new JdbcConnection();
}
}
请各位大侠给小弟看一下为什么插入数据不成功!(我设置的ODBC数据源是source ,连接的数据库是student数据库中的学生表Students)顺便问一下数据源跟数据库名称有没有关系?设置连接时应该用,"jdbc:odbc:数据库名",还是用"jdbc:odbc:数据源名"
------解决方案--------------------
使用odbc连接,应该是使用数据源的名字吧,可以换成jdbc来连接.
------解决方案--------------------
------解决方案--------------------
你在配置数据源时。odbc不是跟你的具体的数据库关联在一起的呀。所以你访问的时候。直接访问数据源。
jdbc的话,就不需要在去配置数据源了。方便些。可移植性也比odbc要好。
------解决方案--------------------