Eclipse中Java如何连接DB2数据库

Eclipse中Java如何连接DB2数据库,第1张

新建java工程

在java代码中输入如下代码

import java.sql.*

public class DB2conn{

 /**设置参数**/

  private static Connection conn = null

  private static Statement stmt = null

  private static ResultSet rs = null

 /**构造方法,链接数据库**/

  public DB2conn() {

             try{

             System.out.println("正在连接数据库..........")

             Class.forName("com.ibm.db2.jcc.DB2Driver")//加载mysql驱动程序类

             String url = "jdbc:db2://localhost:50000/toolsdb"//url为连接字符串

             String user = "db2admin"//数据库用户名

             String pwd = "1234"//数据库密码

             conn=(Connection)DriverManager.getConnection(url,user,pwd)

             System.out.println("数据库连接成功!!!")

             }catch(Exception e){ 

              System.out.println(e.getMessage())

              //e.printStackTrace()

             }

  }

  public static void main(String[] args) throws SQLException {

   DB2conn a = new DB2conn()//实例化对象,作用是调用构造方法

   a.getClass()//无意义

 /**查询语句**/

   String sql="select * from person"

   stmt = (Statement) conn.createStatement()

   stmt.execute(sql)//执行select语句用executeQuery()方法,执行insert、update、delete语句用executeUpdate()方法。

   rs=(ResultSet) stmt.getResultSet()

   while(rs.next()){ //当前记录指针移动到下一条记录上

    int i = rs.getInt(1)//得到当前记录的第一个字段(id)的值

    String name =rs.getString(2)//得到第二个字段(name)的值

    String psw = rs.getString("ppassword")//得到(password)的值

    System.out.println(Integer.toString(i)+" "+name+" "+psw)

   }

  rs.close()//后定义,先关闭

  stmt.close()

  conn.close()//先定义,后关闭

  }

 }

DB2有两个驱动方式, 一个是纯Java的JDBC一个是调用DB2命令行的JDBC驱动.

db2java.zip中的COM.ibm.db2.jdbc.app.DB2Driver是后种. 你在命令行下能够运行是因为环境变量(db2profile)已经设置好了.Eclipse带起来的Java程序没有这些环境变量. COM.ibm.db2.jdbc.app.DB2Driver仅仅是DB2命令的一层封装,没有环境变量,自然找不到命令,自然连接不成功.

换成type4的JDBC driver,或者在eclipse里面设置好db2profile就可以了.

你加两句打印看看.

//这里加入一行

System.out.println("con:"+this.con)

pstmt=this.con.prepareStatement(sql)

//这里加一行

System.out.println("pstmt:"+pstmt)

rs=pstmt.executeQuery()

//这里加一行

System.out.println("rs:"+rs)

看哪个是null


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9995119.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存