当前位置导航:炫浪网>>网络学院>>编程开发>>JAVA教程>>J2EE

使用JDBC连接SYBASE的3种方法


  1.单用一个JSP文件测试SYBASE jconnect-5_2 JDBC数据库接口:
  <%@ page contentType="text/html;charset=GB2312" %>
  <%@ page import="java.sql.*" %>
  <HTML>
  <HEAD>
  <TITLE> JSP测试SYBASE jconnect-5_2 JDBC数据库接口 </TITLE>
  <META NAME="Generator" CONTENT="EditPlus2.11">
  <META NAME="Author" CONTENT="naxin">
  </HEAD>
  <BODY>
  <center>JSP测试SYBASE jconnect-5_2 JDBC数据库接口</center>
  <BR><BR>
  <table border=3 align=center >
  <%
  Class.forName("com.sybase.jdbc2.jdbc.SybDriver");
  String url ="jdbc:sybase:Tds:localhost:2638";
  Connection conn= DriverManager.getConnection(url, "dba","sql");
  Statement stmt=conn.createStatement();
  String sql="select emp_lname,dept_id,street,city,state from employee order by emp_lname";
  ResultSet rs=stmt.executeQuery(sql);
  while(rs.next()) {
  out.print("<TR><TD>"+rs.getString("emp_lname")+"</TD>");
  out.print("<TD>"+rs.getString("dept_id")+"</TD>");
  out.print("<TD>"+rs.getString("street")+"</TD>");
  out.print("<TD>"+rs.getString("city")+"</TD>");
  out.print("<TD>"+rs.getString("state")+"</TD></TR>");
  }
  %>
  </table>
  <BR><HR>
  <%out.print("数据库操作成功,恭喜你");%>
  <%
  rs.close();
  stmt.close();
  conn.close();
  %>
  </BODY>
  </HTML>
  
  2.再用JSP和Java Bean的方法:
  JSP Code:
  
  <%@ page contentType="text/html;charset=GB2312" %>
  <%@ page import="java.sql.*" %>
  <HTML>
  <HEAD>
  <TITLE> </TITLE>
  <META NAME="Generator" CONTENT="EditPlus2.11">
  <META NAME="Author" CONTENT="naxin">
  </HEAD>
  <BODY>
  <jsp:useBean id="sybase" scope="page" class="test.sybconn" />
  <%
  ResultSet rs=sybase.Query("select * from tjck_dh");
  while(rs.next()) {
  out.print("|"+rs.getString("name")+"|");
  out.print(rs.getString("card_no")+"|");
  out.print(rs.getString("amount")+"|");
  out.print(rs.getString("home_call")+"|");
  out.print(rs.getString("office_call")+"|<br>");
  }
  rs.close();
  %>
  
  <HR>
  
  Bean的代码:
  
  package test;
  import java.sql.*;
  
  public class sybconn {
  // String sDBDriver = "com.sybase.jdbc2.jdbc.SybDriver";
  String sConnStr = "jdbc:sybase:Tds:localhost:2638";
  // String user="dba";
  // String passwd="sql";
  Connection conn = null;
  ResultSet rs = null;
  
  public ResultSet Query(String sql) throws SQLException,Exception {
  Class.forName("com.sybase.jdbc2.jdbc.SybDriver").newInstance();
  conn = DriverManager.getConnection(sConnStr,"dba","sql");
  Statement stmt = conn.createStatement();
  rs = stmt.executeQuery(sql);
  return rs;
  }
  }
  
  3.利用JDBC(SYBAE jconnect-5_2)查询Sybase ASA7.0中数据的图形化Java程序范例:
  //
  //  一个简单的利用JDBC(SYBAE jconnect-5_2)查询Sybase ASA7.0中数据的图形化Java程序范例
  //  执行的SQL语句是" select * from employee " ,可以改成自己所需的.
  //  运行方式为: c:\> java JDBCTest
  //
  
  import java.awt.*;
  import java.sql.*;  // 在使用JDBC之前,必须引入JAVA的SQL包
  
  class JDBCTest extends Frame {
  TextArea myTextArea;
  public JDBCTest () {
  //设定程序的显示界面
  super("一个简单的利用JDBC(jconnect-5_2)查询Sybase ASA7.0中数据的图形化Java程序范例");
  setLayout(new FlowLayout());
  myTextArea = new TextArea(30,80);
  add(myTextArea);
  resize(500,500);
  show();
  myTextArea.appendText("数据库查询中,请等待......\n");
  }
  void displayResults(ResultSet results) throws SQLException {
  //首先得到查询结果的信息
  ResultSetMetaData resultsMetaData = results.getMetaData();
  int cols = resultsMetaData.getColumnCount();
  //将等待信息清除
  myTextArea.setText("");
  //显示结果
  while(results.next()) {
  for(int i=1;i<=cols;i++) {
  if(i>1)
  myTextArea.appendText("\t");
  try{
  myTextArea.appendText(results.getString(i));
  }
  // 捕获空值时产生的异常
  catch(NullPointerException e){
  }
  }
  myTextArea.appendText("\n");
  }
  }
  
  public boolean handleEvent(Event evt) {
  if (evt.id == Event.WINDOW_DESTROY) {
  System.exit(0);
  return true;
  }
  return super.handleEvent(evt);
  }
  
  public static void main(String argv[]) throws SQLException,Exception {
  //设定查询字串
  String queryString = "select * from employee";
  JDBCTest myJDBCTest = new JDBCTest();
  //加载驱动程序
  Class.forName("com.sybase.jdbc2.jdbc.SybDriver").newInstance();
  //建立连接,localhost为主机名,dba为用户名,sql为密码
  Connection myConn = DriverManager.getConnection("jdbc:sybase:Tds:localhost:2638","dba","sql");
  Statement myStmt = myConn.createStatement();
  //执行查询
  ResultSet myResults = myStmt.executeQuery(queryString);
  myJDBCTest.displayResults(myResults);
  //关闭所有打开的资源
  myResults.close();
  myStmt.close();
  myConn.close();
  }
  }
相关内容
赞助商链接