链接sql server经典代码实例
(注意:代码的红色字体为链接数据库的关键代码
使用sql server时注意配置数据源)
(如果需要完整的链接sql server的学生管理系统,去我的博客下载完整的项目)
---------------------------------
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.*;
import java.util.Vector;
import java.awt.event.ActionListener;
import java.sql.*;
import java.util.Vector;
import javax.swing.*;
public class student1 extends JFrame implements ActionListener{
public class student1 extends JFrame implements ActionListener{
/**
* @param args
*/
JPanel mb1,mb2;
JLabel bq1;
JTextField wbk1;
JButton an1,an2,an3,an4;
JTable bg1;
JScrollPane gd1;
Vector ziduan,jilu;
//数据库所需要的几个变量
PreparedStatement ps =null;
Connection ct = null;
ResultSet rs = null;
@SuppressWarnings("unchecked")
public student1()
{
mb1 = new JPanel();
bq1 = new JLabel("请输入姓名");
wbk1 = new JTextField(10);
an1 = new JButton("查询");
an1.addActionListener(this);
an1.setActionCommand("chaxun");
mb1.add(bq1); mb1.add(wbk1);mb1.add(an1);
mb2 = new JPanel();
an2 = new JButton("添加");
an2.addActionListener(this);
an2.setActionCommand("tianjia");
an3 = new JButton("删除");
an3.addActionListener(this);
an3.setActionCommand("xiugai");
an4 = new JButton("修改");
an4.addActionListener(this);
an4.setActionCommand("shanchu");
mb2.add(an2); mb2.add(an3); mb2.add(an4);
ziduan = new Vector();
ziduan.add("学号");
ziduan.add("姓名");
ziduan.add("性别");
ziduan.add("年龄");
ziduan.add("籍贯");
ziduan.add("专业");
jilu = new Vector();
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
* @param args
*/
JPanel mb1,mb2;
JLabel bq1;
JTextField wbk1;
JButton an1,an2,an3,an4;
JTable bg1;
JScrollPane gd1;
Vector ziduan,jilu;
//数据库所需要的几个变量
PreparedStatement ps =null;
Connection ct = null;
ResultSet rs = null;
@SuppressWarnings("unchecked")
public student1()
{
mb1 = new JPanel();
bq1 = new JLabel("请输入姓名");
wbk1 = new JTextField(10);
an1 = new JButton("查询");
an1.addActionListener(this);
an1.setActionCommand("chaxun");
mb1.add(bq1); mb1.add(wbk1);mb1.add(an1);
mb2 = new JPanel();
an2 = new JButton("添加");
an2.addActionListener(this);
an2.setActionCommand("tianjia");
an3 = new JButton("删除");
an3.addActionListener(this);
an3.setActionCommand("xiugai");
an4 = new JButton("修改");
an4.addActionListener(this);
an4.setActionCommand("shanchu");
mb2.add(an2); mb2.add(an3); mb2.add(an4);
ziduan = new Vector();
ziduan.add("学号");
ziduan.add("姓名");
ziduan.add("性别");
ziduan.add("年龄");
ziduan.add("籍贯");
ziduan.add("专业");
jilu = new Vector();
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//sql是配置的用户数据源的名称 sa sa 分别是sql server的账户名和密码
ct = DriverManager.getConnection("jdbc:odbc:sql","sa","sa");
ps = ct.prepareStatement("select * from xs");
rs = ps.executeQuery();
while(rs.next())
{
Vector hang = new Vector() ;
hang.add(rs.getString(1));
hang.add(rs.getString(2));
hang.add(rs.getString(3));
hang.add(rs.getInt(4));
hang.add(rs.getString(5));
hang.add(rs.getString(6));
jilu.add(hang);
}
}
catch (Exception e)
{
}
finally{
try {
if(rs != null)
rs.close();
if(ps != null)
ps.close();
if(ct != null)
ct.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//将字段添加到表格中,然后将表格添加到滚动条中
bg1 = new JTable(jilu,ziduan);
gd1 = new JScrollPane(bg1);
ct = DriverManager.getConnection("jdbc:odbc:sql","sa","sa");
ps = ct.prepareStatement("select * from xs");
rs = ps.executeQuery();
while(rs.next())
{
Vector hang = new Vector() ;
hang.add(rs.getString(1));
hang.add(rs.getString(2));
hang.add(rs.getString(3));
hang.add(rs.getInt(4));
hang.add(rs.getString(5));
hang.add(rs.getString(6));
jilu.add(hang);
}
}
catch (Exception e)
{
}
finally{
try {
if(rs != null)
rs.close();
if(ps != null)
ps.close();
if(ct != null)
ct.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//将字段添加到表格中,然后将表格添加到滚动条中
bg1 = new JTable(jilu,ziduan);
gd1 = new JScrollPane(bg1);
this.add(mb1,"North");
this.add(gd1);
this.add(mb2,"South");
this.setTitle("学生成绩管理系统");
this.setSize(800,600);
this.setLocation(401, 180);
this.setResizable(false);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
student1 xs1 = new student1();
}
this.add(gd1);
this.add(mb2,"South");
this.setTitle("学生成绩管理系统");
this.setSize(800,600);
this.setLocation(401, 180);
this.setResizable(false);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
student1 xs1 = new student1();
}
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(e.getSource() == an1)
{
String xm = this.wbk1.getText().trim();
String sql = "select * from xs where xingming = '"+xm+"'";
xsxx xsxx1 = new xsxx(sql);
bg1.setModel(xsxx1);
}
else if(e.getSource() == an2 )
{
tianjia tianjia1 = new tianjia(this,"添加学生信息",true);
xsxx xsxx2 = new xsxx();
bg1.setModel(xsxx2);
}
else if(e.getSource() == an3)
{
xsxx xsxx2 = new xsxx();
int ii=this.bg1.getSelectedRow();
if(ii==-1)
{
JOptionPane.showMessageDialog(this,"请选中要删除的行");
return;
}
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(e.getSource() == an1)
{
String xm = this.wbk1.getText().trim();
String sql = "select * from xs where xingming = '"+xm+"'";
xsxx xsxx1 = new xsxx(sql);
bg1.setModel(xsxx1);
}
else if(e.getSource() == an2 )
{
tianjia tianjia1 = new tianjia(this,"添加学生信息",true);
xsxx xsxx2 = new xsxx();
bg1.setModel(xsxx2);
}
else if(e.getSource() == an3)
{
xsxx xsxx2 = new xsxx();
int ii=this.bg1.getSelectedRow();
if(ii==-1)
{
JOptionPane.showMessageDialog(this,"请选中要删除的行");
return;
}
String st=(String)xsxx2.getValueAt(ii,0);
PreparedStatement ps=null;
Connection ct=null;
ResultSet rs=null;
Statement sm=null;
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
ct=DriverManager.getConnection("jdbc:odbc:sql","sa","sa");
ps=ct.prepareStatement("delete from xs where xuehao=?");
ps.setString(1,st);
ps.executeUpdate();
} catch (Exception e2){}
finally
{
try {
if(rs!=null)
{
rs.close();
}
if(ps!=null)
{
ps.close();
}
if(ct!=null)
{
ct.close();
}
} catch (Exception e3){}
}
xsxx2=new xsxx();
bg1.setModel(xsxx2);
}
PreparedStatement ps=null;
Connection ct=null;
ResultSet rs=null;
Statement sm=null;
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
ct=DriverManager.getConnection("jdbc:odbc:sql","sa","sa");
ps=ct.prepareStatement("delete from xs where xuehao=?");
ps.setString(1,st);
ps.executeUpdate();
} catch (Exception e2){}
finally
{
try {
if(rs!=null)
{
rs.close();
}
if(ps!=null)
{
ps.close();
}
if(ct!=null)
{
ct.close();
}
} catch (Exception e3){}
}
xsxx2=new xsxx();
bg1.setModel(xsxx2);
}
else if(e.getSource() == an4)
{
xsxx xsxx2 = new xsxx();
//返回第一个选定行的索引;如果没有选定的行,则返回 -1。
int ii=this.bg1.getSelectedRow();
if(ii==-1)
{
JOptionPane.showMessageDialog(this,"请选中要修改的行");
return;
}
new xssc(this,"修改学生信息",true,xsxx2,ii);
xsxx2=new xsxx();
bg1.setModel(xsxx2);
}
}
{
xsxx xsxx2 = new xsxx();
//返回第一个选定行的索引;如果没有选定的行,则返回 -1。
int ii=this.bg1.getSelectedRow();
if(ii==-1)
{
JOptionPane.showMessageDialog(this,"请选中要修改的行");
return;
}
new xssc(this,"修改学生信息",true,xsxx2,ii);
xsxx2=new xsxx();
bg1.setModel(xsxx2);
}
}
}