本文目录一览:
Eclipse中Java如何连接DB2数据库
新建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();//先定义,后关闭
}
}
java程序读取db2数据库中所有数据表以及表数据,创建到mysql数据库中?
因为我没有转载DB2 所以没有办法帮你写出具体的sql语句,也不能测试.我oracle 为例吧.
1.不管java 连接那个数据库都是一样的.
Class.forName(dir);
String url = "";//数据库名,用户名和密码
Connection conn = DriverManager.getConnection(url);
Statement stat = conn.createStatement();
// 执行你想要执行的sql语句.下面是查询,修改和删除有点不一样.
ResultSet rs = stat.executeQuery(sql);
你可以通过select table_name from user_tables; 这个sql语句查询才出数据库里面所有的表.
再通过 select * from ALL_TAB_COLS A where lower(A.Table_Name) = '表名' 查询出某一个表的相关信息.这样是有点繁琐,不过不失为一种解决方法.
2 .读取数据就更容易了.
直接执行select 就可以了.
3. 帮刚刚读出来的表结构组装成建表语句. create 一下就可以了.
4.关于数据类型我也不是很清楚,你可以在网上查一查db2有哪些数据类型.然后在建表的时候做一下儿转换就可以了.
5.你说的也就是把刚刚查询出来的数据插入到数据库中.insert 就可以了.
其实java 操作数据库很简单的.不同于c.查询出来后,做适当的组装处理.就可以得到你想要的结果.
希望对你有帮助.
Java连接DB2数据库问题
你加两句打印看看.
//这里加入一行
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
java 连接 db2
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就可以了.