Jdbc连Sybase数据库的几种方法

类别:Java 点击:0 评论:0 推荐:
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(); } }

本文地址:http://com.8s8s.com/it/it17756.htm