亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Java > 正文

使用Java對數據庫進行基本的查詢和更新操作

2019-11-26 14:56:02
字體:
來源:轉載
供稿:網友

數據庫查詢

利用Connection對象的createStatement方法建立Statement對象,利用Statement對象的executeQuery()方法執行SQL查詢語句進行查詢,返回結果集,再形如getXXX()的方法從結果集中讀取數據。經過這樣的一系列步驟就能實現對數據庫的查詢。

【例】Java應用程序訪問數據庫。應用程序打開考生信息表ksInfo,從中取出考生的各項信息。設考生信息數據庫的結構如下:

import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.util.*;import java.sql.*;public class Example10_9 extends JFrame implements ActionListener{  public static Connection connectByJdbcodbc(String url, String username,String password){    Connection con = null;    try{      Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //加載ODBC驅動程序    }    catch (Exception e){      e.printStackTrace();      return null; //加載失敗,連接不成功    }    try{      con = DriverManager.getConnection(url, username, password);    }    catch (SQLException e){      e.printStackTrace();      return null; //連接失敗    }    return con; //連接成功  }  String title[] ={"考號", "姓名", "成績", "地址", "簡歷"};  JTextField txtNo = new JTextField(8);  JTextField txtName = new JTextField(10);  JTextField txtScore = new JTextField(3);  JTextField txtAddr = new JTextField(30);  JTextArea txtresume = new JTextArea();  JButton prev = new JButton("前一個");  JButton next = new JButton("后一個");  JButton first = new JButton("第一個");  JButton last = new JButton("最后一個");  Statement sql; //SQL語句對象  ResultSet rs; //存放查詢結果對象  Example10_9(Connection connect){    super("考生信息查看窗口");    setSize(450, 350);    try{      sql = connect.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);      rs = sql.executeQuery("SELECT * FROM ksInfo");      Container con = getContentPane();      con.setLayout(new BorderLayout(0, 6); JPanel p[] = new JPanel[4];      for (int i = 0; i < 4; i++){        p[i] = new JPane(new FlowLayout(FlowLayout.LEFT, 8, 0));        p[i].add(new JLabel(title[i]));      }      p[0].add(txtNo);      p[1].add(txtName);      p[2].add(txtScore);      p[3].add(txtAddr);      JPanel p1 = new JPane(new GridLayout94, 1, 0, 8));      JScrollPane jsp = new JScrollPane(txtResume,        JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,        JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);        jsp.setPreforredSize(new Dimension(300, 60);      for (int i = 0; i < 4; i++){        p1.add(p[i]);      }      JPanel p2 = new JPanel(new FlowLayout(FlowLayout.LEFT, 10, 0);      p2.add(new JLabel(title[4]));      p2.add(jsp);      Jpanel p3 = new Jpanel();      p3.add(prev);      p3.add(next);      p3.add(first);      p3.add(last);      prev.addActionListener(this);      next.addActionListener(this);      first.addActionListener(this);      last.addActionlistener(this);      rs.first();      readRecord();    }    catch (Exception e){      e.printStackTrace():    }    setVisible(ture);  }  public void modifyRecord(Connection connect){    String stuNo = (String)JOptionPane.showInputDialog(null,      "請輸入考生考號", "輸入考號對話框", JOptionPane.PLAIN_MESSAGE, null,      null, "");    try {      sql = connect.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);      rs = sql.executeQuery("SELECT * FROM ksInfo");      Container con = getContentPane();      con.setLayout(new Boarderlayout(0, 6));      Jpanel p[] = new JPanel[4];      for (int i = 0; i < ; i++){        p[i] = new JPane(new FlowLayout(flowLayout.LEFT, 8, 0));        p[i].add(new JLabel(title[i]));      }      p[0].add(txtNo);      p[1].add(txtName);      p[2].add(txtScore);      p[3].add(txtAddr);      Jpanel p1 = new Jpane(new GridLayout(4, 1, 0, 8));      JScrollPane jsp = new JScrollPane(txtResume,        JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,        JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);      jsp.setPreferredSize (new dimension(300, 60));      for (int i = 0; i < 4; i++){        p1.add(p[i]);      }      Jpanel p2 = new JPanel(new FlowLayout(FlowLayout.LEFT, 10, 0));      p2.add(new JLableI(title[4]));      p2.add(jsp);      JPanel p3 = new JPanel();      p3.add(prev);      p3.add(next);      p3.add(first);      p3.add(last);      prev.addActionListener(this);      next.addActionListener(this);      first.addActionListenerIthis);      last.addActionListener(this);      rs.first();      readRecord();    }    catch (Exception e){      e.printStackTrace();    }    setVisible(true);  }  boolean readRecord(){    try{      txtNo.setText(rs.getString("考號")); txtName.setText(rs.getString("姓名")); txtScore.setText(rs.getString("成績"));      txtAddr.setText(rs.getString("地址")); txtResume.setText(rs.getString("簡歷"));    }    catch (SQLException e){      e.printStackTrace(); return false;    }    return true;  }  public void actionPerformed(ActionEvent e){    try{      if (e.getSource() == prev)rs.previous();      else if (e.getSource() == next)rs.next();      else if (e.getSource() == first)rs.first();      else if (e.getSource() == last)rs.last(); readRecord();    }    catch (Exception e2){}  }  public static void main(String args[]){    connection connect = null;    JFrame .setDefaultLookAndFeeDecorated(true);    Font font = new Font("JFrame", Font.PLAIN, 14);    if ((connect =connectByJdbcOdbc("jdbc:odbc:redsun", "xia", "1234")) == null){      JOptionPane.showMessageDialog(null, "數據庫連接失敗!");      System.exit ( - 1);    }    new Example10_9(connect); //創建對象  }}

Java數據庫更新
數據庫更新操作包括數據表創建、刪除、以及數據表記錄的增加、刪除、修改等操作。如果利用數據 SQL命令實現,則利用Statement對旬的executeUpdate()方法,執行SQL的update語句,實現數據表的修改;執行SQL的insert語句,實現數據表記錄的添加。

例如,在前面數據為查詢例子基礎上,再增加對數據表的修改和插入。限于篇幅,不再給出完整程序,只給出實現修改和插入的方法。程序可再增設插入、,,除保存按鈕,通過已有的瀏覽,定位到數據表的特定位置,對癰疽記錄進行編輯修改,或插入,或刪除,然后按保存按鈕,完成修改后的數據表保存。

下面用代碼說明數據表更新的方法。與數據表連接時,需指定獲得的ResultSet 對象是可更新的。

  stmt = connect.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE);

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
不卡在线观看电视剧完整版| 欧美日韩综合视频| 欧美性xxxx极品高清hd直播| 国产区精品在线观看| 国产日韩精品综合网站| 国内精品中文字幕| 欧美成人激情在线| 91成人天堂久久成人| 日韩亚洲成人av在线| 性欧美xxxx| 欧美日韩美女视频| 日韩在线播放av| 欧美极品在线视频| 欧美激情一级欧美精品| 国产高清视频一区三区| 最新国产精品拍自在线播放| 日韩在线观看视频免费| 97国产精品免费视频| 国产精品一区av| 亚洲高清av在线| 成人激情电影一区二区| 91精品国产自产在线| 欧美亚洲视频在线观看| 亚洲天堂av女优| 亚洲自拍偷拍一区| 亚洲毛片一区二区| 亚洲黄色成人网| 久久成人精品一区二区三区| 国产精品香蕉在线观看| 欧美特级www| 国产福利精品视频| 精品亚洲一区二区三区| 亚洲精品一二区| 欧美一级在线播放| 中文字幕成人精品久久不卡| 日韩小视频在线| 亚洲日本aⅴ片在线观看香蕉| 91国产精品视频在线| 欧美在线精品免播放器视频| 久久av在线播放| 久久人人爽人人爽人人片av高清| 欧美高清第一页| 欧美亚洲免费电影| 色偷偷9999www| 91国产视频在线播放| 国产精品久久婷婷六月丁香| 91av网站在线播放| 久久伊人精品视频| 亚洲丝袜一区在线| 亚洲综合大片69999| 91精品国产高清自在线| 欧美日韩福利电影| 成人黄色免费在线观看| 亚洲а∨天堂久久精品9966| 欧美极品欧美精品欧美视频| 日产精品久久久一区二区福利| 欧美成年人视频网站欧美| 欧美在线一区二区视频| 欧美日本亚洲视频| 午夜精品国产精品大乳美女| 91免费国产视频| 成人精品一区二区三区电影免费| 亚洲激情视频网站| 国产成人精品av| 欧美日韩免费在线| 国产成人精品国内自产拍免费看| 日韩精品在线观看网站| 欧美第一黄网免费网站| 久久久最新网址| 久久久精品2019中文字幕神马| 日韩欧美国产网站| 亚洲一区二区免费在线| 欧美一区二区影院| 国产自产女人91一区在线观看| 国产高清在线不卡| 欧美猛少妇色xxxxx| 欧美一级黑人aaaaaaa做受| 欧美性理论片在线观看片免费| 日韩电视剧在线观看免费网站| 亚洲奶大毛多的老太婆| 国产成人精品a视频一区www| 一区二区三区天堂av| 成人免费福利在线| 黑人巨大精品欧美一区二区三区| 久久精品国产成人| 久久av资源网站| 成人有码视频在线播放| 亚洲国产精久久久久久久| 国产日韩精品在线观看| 国产a级全部精品| yw.139尤物在线精品视频| 欧美野外wwwxxx| 欧美成人免费全部| 国产精品福利无圣光在线一区| 亚洲日韩第一页| 91免费高清视频| 91久久精品一区| 欧美日韩免费网站| 久久久成人av| 亚洲自拍高清视频网站| 欧美日韩色婷婷| 亚洲欧美日韩综合| 国产精品亚洲自拍| 久久亚洲综合国产精品99麻豆精品福利| 国产精品pans私拍| 欧美激情在线观看视频| xvideos亚洲人网站| 亚洲国产中文字幕久久网| 亚洲精品电影网站| 欧美性精品220| 午夜精品久久久久久99热软件| 国产国语videosex另类| 精品中文字幕在线| 一区二区三区国产在线观看| 亚洲欧洲日产国码av系列天堂| 欧美日本在线视频中文字字幕| 日韩精品在线看| 日韩av片免费在线观看| 97超级碰碰人国产在线观看| 国产有码在线一区二区视频| 久久成人精品视频| 夜夜嗨av一区二区三区四区| 日韩精品视频在线播放| 久久久久久这里只有精品| 国产精品日韩在线| 91精品国产自产在线观看永久| 亚洲影院色无极综合| 久久久久久久久中文字幕| 日韩欧美在线中文字幕| 日韩欧美国产骚| 久久天堂电影网| 好吊成人免视频| 久久久久久久香蕉网| 国产亚洲精品久久久久久牛牛| 91在线无精精品一区二区| 97香蕉久久超级碰碰高清版| 国产精品成人v| 91中文在线视频| 疯狂做受xxxx欧美肥白少妇| 欧美视频第一页| 日本精品久久中文字幕佐佐木| 欧美电影免费观看电视剧大全| 欧美成人免费一级人片100| 精品毛片三在线观看| 久久久久久久激情视频| 欧美激情xxxx性bbbb| 中文字幕一区电影| 亚洲欧洲第一视频| 69**夜色精品国产69乱| 91欧美视频网站| 日韩成人性视频| 怡红院精品视频| 黑人巨大精品欧美一区二区一视频| 成人激情在线观看| 一本色道久久88亚洲综合88| 8x拔播拔播x8国产精品| 日韩欧美亚洲一二三区| 亚洲男人av在线| 国产精品电影网| 精品亚洲va在线va天堂资源站| 久久精品国产久精国产一老狼| 中文字幕国产精品| 久久九九国产精品怡红院| 久久精品国产v日韩v亚洲|