日期:2014-05-20  浏览次数:20820 次

纯java如何通过Thin连接Oracle9i并查询数据库,纯java如何调用jdbc
求实例代码:java如何通过Thin连接Oracle9i并查询数据库,纯java如何调用jdbc?(不通过web服务器如Tomcat)

我现在请人写了一个,但有错误,代码如下:
package   lib;

import   java.net.URL;
import   java.sql.*;
import   java.io.*;

public   class   testing{

public   static   void   main(String[]   args){
try{
Class.forName( "oracle.jdbc.driver.OracleDriver ");
Connection   connect=DriverManager.getConnection( "jdbc:oracle:thin:@192.168.134.100:1521:fkjdgl ", "system ", "123456 ");
Statement   stmt=connect.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);

String   sql= "insert   into   backupinfo(method,server,sharefolder,time,location)   values( 'dd ', 'aa ', 'bb ', 'ee ', 'ff ') ";
int   i=stmt.executeUpdate(sql);
connect.close();
}
catch(Exception   e){
System.err.println(e.getMessage());
}
}
}
错误提示信息:
Exception   in   thread   "main "   java.lang.NoClassDefFoundError:   lib/testing


------解决方案--------------------
你可以试一下,我们这里用的是sqlserver,没有问题!
有问题大家一起探讨!

package lib;

//import java.net.*;
import java.sql.*;
//import java.io.*;

public class testing{

public static void main(String[] args){
try{
Class.forName( "com.microsoft.jdbc.sqlserver.SQLServerDriver ");
Connection connect=DriverManager.getConnection( "jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=onlineDB ", "sa ", " ");
Statement stmt=connect.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
stmt.executeUpdate( "drop table backupinfo ");
stmt.executeUpdate( "create table backupinfo(method varchar(10),server varchar(10),sharefolder varchar(10),time varchar(10),location varchar(10)) ");

String sql= "insert into backupinfo(method,server,sharefolder,time,location) values( 'dd ', 'aa ', 'bb ', 'ee ', 'ff ') ";
int i=stmt.executeUpdate(sql);
System.out.println(i);
connect.close();
}
catch(Exception e){
System.err.println(e.getMessage());
}
}
}
------解决方案--------------------
常用的两种方法连接数据库(SQL Server2000 为例)
------------------------------------------------
1、下载SQL Server 2000 driver for JDBC
SQL Server 2000 Driver For JDBC Downloads
该驱动截止目前有四个版本,建议下载最新的SP3版。
该驱动安装成功后,请将安装目录下的lib目录下的三个.jar文件加到CLASSPATH中;如果你使用的是JBuilder或Eclipse,将这三个文件根据IDE的提示加到工程中也可。

2、升级你的SQL Server 2000,为其打上最新的补丁。
这一步可能不是必需的,因操作系统环境而定,在不打补丁的情况,有时可以正常连接,有时却不能,所以建议还是安装最新的SQL Server 2000补丁(SP4)和JDBC驱动(SP3)。
如果你的程序在运行时提示:Error establishing socket,一般情况下,打上SQL Server 2000的补丁就可解决。

3、驱动的加载方法
在建立连接之前,要先加载SQL Server 2000 JDBC的驱动,代码形式如下:
Class.forName( "com.microsoft.jdbc.sqlserver.SQLServerDriver ");
在此注意,forName方法的参数字符串必须完全相同于以上内容,大小写是区分的,其实这个串就是驱动类的完整名称:包名+类名。

4、获得一个连接
在操作数据库之前,要先获得与数据库的一个连接,使用如下代码格式:
DriverManager.getConnection(连接字符串, 登录用户名, 登录密码);
例:
DriverManager.getConnection( "jdbc:microsoft:sqlserver://localhost:1433; DatabaseName=pubs ", "sa ", " ");
在此处关键的是连接字符串的内容,localhost部分即服务器的名字,可以更改;1433部分为SQL Server使用的端口号,根据实际情况修改即可;DatabaseName即为要连接的数据库的名字,在此注意DatabaseName之前的是分号,而不是冒号。