linux db2连接好后如何jianbiao,Java 连接数据库入门教程(附件有图解)

ca56232b3bbedf9a539d07f37fffb99a.gif

3144d8b7615c79d9f638db40d5689d26.gif

a218af6549b45ee526caf607ebff1358.gif

0f8df0e29816ae721419de940fb833d1.gif

Java 连接数据库入门教程(附件有图解)

JAVA数据库连接

一、了解JDBC

JDBC(Java DataBase Connectivity)是java数据库连接API。简单地说,JDBC能完成3件事:

(1)与一个数据库建立连接;

(2)向数据库发送SQL语句:

(3)处理数据库返回的结果。

下面我们就结合一个例子来说明这3步。

JDBC在设计上和ODBC很相似。ODBC和数据库建立连接的一种方式是首先建立起一个JDBC-ODBC桥接器。由于ODBC驱动程序被广泛的使用,建立这种桥接器后,使得JDBC有能力访问几乎所有类型的数据库。

二、建立数据库

假设我们有一个用Access设计的数据库:student.mdb,该库中有一个表,表的名字是

chengjibiao

三、设置数据源

为了同这个数据库建立连接,打开windows中的控制面板的管理工具的ODBC数据源。

点击图3 “添加”按钮,增加新的数据源。

选择“Microsoft Access Driver(*.mdb)”之后,点击完成按钮(为数据源选择了驱动程序)

在“数据源名”文本框里写入你喜欢的名字,这里起名为“ceshi”。

这个数据源就是指某个数据库。

再点击“选择”按钮,把数据源ceshi设成要连接的数据库student.mdb。

如果我们要为数据源ceshi设置一个”登录名称”和“密码”的话,就再点击“高级”

按钮,否则点击确定按钮就完成了数据源设置的全部步骤。

现在,假设我们要给数据源一”登录名称”和“密码”,那么点击“高级”按钮。

在”登录名称”里输入一个用户名,这里我们给的是meng ;在 “密码”文本框里输入口令(这里我们输入的是1234)。(注意这里的密码和数据库本身的密码没有关系)。然后都点击确定按钮,就完成了全部过程。关闭控制面板即可。

四、JDBC-ODBC桥接器

1.建立JDBC-ODBC桥接器

现在我们有了一个数据源,这个数据源就是一个数据库。

为了连接到这个数据库,首先要建立一个JDBC-ODBC桥接器:

C1ass.forName(“sun.jdbc.Ddbc.JdbcOdbcDriver ”);

这里,Class是包java.sq1中的一个类,这类通过调用它的静态方法forName就可以建立JDBC-ODBC桥接器。

注意:建立桥接器时可能发生异常、因此必须捕获这个异常。

方法是:

try  {  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

}

catch  (java.lang.ClassNotFoundException  e)

{

System.out.println(" 打不开文件" + e);

}

2.连接到数据库

首先使用包java.Sql中的Connection类声明一个对象.然后再使用类DriverManager调用它的静态方法getConnectio创建这个连接对象:

Connection con = DriverManager.getConnection(“jdbc:odb:数据源的名字”,“登录名称”,“密码”);

如没有设置登录名称和密码,则为:

Connection con = DriverManager.getConnection(“jdbc:odb:数据源的名字”,“”,“”);

这里的例子的方法为:

Connection con = DriverManager.getConnection(“jdbc:odbc:ceshi”,“meng”,“1234”);

建立连接时应捕获SQLException异常:

try  {

Connection con= DriverManager.getConnection("jdbc:odbc:ceshi","meng","1234");

}

catch (SQLException  e)

{       }

这样就建立好了到数据库student.mdb的连接。

3、向数据库发送SQL语句

首先使用statement声明—个SQL语句对象,然后通过刚才创建的连接数据库的对象con调用createStatement()方法创建这个SQL语句对象。

Try { Statement sql=con.createStatement( );}

Catch(SQLException  e){  }

4、处理查询结果

有了SQL对象后,就可以调用相应的方法实现对数据库的查询和修改。并将查询结果存放在一个ResultSet类声明的对象中,也就是说SQL语句对数据库的查询操作将返回—个ResultSet对象:

ResultSet rs=sql.executeQuery("SELECT  *  FROM  chengjibiao");

ResultSett对象实际上是—个管式数据集,即它是由统一形式的列组织的数据行组成*

ResultSet对象一次只能看到—个数据行,使用next()方法走到下一数据行。获得一行数据后,ResultSet对象可以使用位置索引(第一列使用l,第二列使用2等等)或使用列名称,以便使用getXxx()方法获得字段值。下表1给了出了ResultSet对象的若干方法。

1、JSP连接Oracle8/8i/9i数据库(用thin模式)

步骤:

(1) 加载驱动程序: Class.forName("oracle.jdbc.driver.OracleDriver");

(2) 建立连接: Connection conn= DriverManager.getConnection(url,user,password);

文件 testoracle.jsp

2、JSP连接Sql Server7.0/2000数据库

步骤:

(1) 加载驱动程序: Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");

(2) 建立连接: Connection conn= DriverManager.getConnection(url,user,password);

文件 testsqlserver.jsp

3、JSP连接MySQL数据库

步骤:

(1) 加载驱动程序: Class.forName("org.gjt.mm.mysql.Driver");

(2) 建立连接: Connection conn= DriverManager.getConnection(url);

文件 testmysql.jsp

4、JSP连接PostgreSQL数据库

步骤:

(1)    加载驱动程序: Class.forName("org.postgresql.Driver");

(2) 建立连接: Connection conn= DriverManager.getConnection(url,user,password);

文件 testpostgresql.jsp

5、JSP连接DB2数据库

步骤:

(1) 加载驱动程序:Class.forName("com.ibm.db2.jdbc.app.DB2Driver ");

(2) 建立连接:Connection conn= DriverManager.getConnection(url,user,password);

文件 testdb2.jsp

6、JSP连接Informix数据库

步骤:

(1) 加载驱动程序: Class.forName("com.informix.jdbc.IfxDriver");

(2) 建立连接: Connection conn= DriverManager.getConnection(url);

文件 testinformix.jsp

7、JSP连接Sybase数据库

步骤:

(1) 加载驱动程序: Class.forName("com.sybase.jdbc.SybDriver");

(2) 建立连接: Connection conn= DriverManager.getConnection(url, SysProps);

文件 testsybase.jsp

下面有个例子,是从student.mdb读入数据,然后输出到表格(JTable)

源码和数据文件在附件中都有.

import java.sql.*;

import java.awt.*;

import javax.swing.*;

import javax.swing.table.DefaultTableModel;

import java.util.*;

class JTable1 extends JFrame

{

JPanel cp = new JPanel();

JTable jtable1;

JScrollPane jscrp1 = new JScrollPane();

public JTable1()

{

cp = (JPanel)this.getContentPane();

this.setTitle("student result");

this.setSize(500, 200);

cp.setLayout(new FlowLayout());

Connection  con;

Statement sql;

ResultSet rs;

DefaultTableModel dtm;

//DefaultTableModel是 TableModel 的一个实现,它使用一个 Vector 来存储单元格的值对象,该 Vector 由多个 Vector 组成。

Vector content=new  Vector ();

Vector title=new Vector ();

try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); } //建立桥接器

catch (java.lang.ClassNotFoundException  e)

{ e.printStackTrace();}

try

{

con= DriverManager.getConnection("jdbc:odbc:st","meteor","12345");//连接

sql=con.createStatement();//创建SQL语句对象

rs=sql.executeQuery("SELECT  *  FROM  result");//查询

ResultSetMetaData rsmd=rs.getMetaData();

//ResultSetMetaData可用于获取关于 ResultSet 对象中列的类型和属性信息的对象

for(int i = 1; i <= rsmd.getColumnCount(); i++)//getColumnCount()记录条数

title.add(rsmd.getColumnName(i));//获取列名(对象String)

while(rs.next())

{

Vector tmp=new Vector();//一个Vector content包含多个Vector

for(int i = 1; i <= rsmd.getColumnCount(); i++)

tmp.add(rs.getString(i));//获取记录

content.add(tmp);

}

dtm=new DefaultTableModel(content,title);

jtable1 = new JTable(dtm);

jtable1.setRowHeight(20);

jscrp1.getViewport().add(jtable1);//getViewport()滚动窗格的视口子级

cp.add(jscrp1);

con.close();

}

catch  (SQLException el)

{ el.printStackTrace();}

}

}

public  class  JAVADB

{

public static void main(String args[])

{

JTable1 JTable1 = new JTable1();

JTable1.setVisible(true);

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值