⑴ 请教JDBC怎么连接ORACLE数据库
1)连接Oracle 8/8i/9i/10g/11g(thin模式)
Class.forName("oracle.JDBC.driver.OracleDriver").newInstance();
String url="JDBC:oracle:thin:@localhost:1521:orcl" //orcl为Oracle数据库的SID
String user="test";
String password="test";
Connection con=DriverManager.getConnection(url,user,password);
2)连接DB2数据库
Class.forName("com.ibm.db2.jcc.DB2Driver");
String url="JDBC:db2://localhost:5000/testDb";
String user="test"; String password="test";
Connection con=DriverManager.getConnection(url,user,password);
3)连接MySQL数据库
Class.forName("com.mysql.jdbc.Driver");
String url="JDBC:mysql://localhost:8080/testDB";
String user="test"; String password="test";
Connection con=DriverManager.getConnection(url,user,password);
4)连接SQL Server2000数据库
Class.forName("com.microsoft.JDBC.sqlserver.SQLServerDriver");
String url="JDBC:microsoft:sqlserver://localhost:1433;DatabaseName=testDb";
String user="test"; String password="test";
Connection con=DriverManager.getConnection(url,user,password);
5)连接PostgreSQL数据库
Class.forName("org.postgresql.Driver");
String url="JDBC:postgresql://localhost/testDb";
String user="test"; String password="test";
Connection con=DriverManager.getConnection(url,user,password);
6)连接Access数据库
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url="JDBC:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ="+application.getRealPath("/Data/testDb/mdb");
Connection conn=DriverManager.getConnection(url,"","");
7连接Sybase数据库
Class.forName("com.sybase.JDBC.SybDriver");
String url="JDBC:sybase:Tds:localhost:5007/testDb";
Properties pro=System.getProperties();
pro.put("user","userId");
pro.put("password","user_password");
Connection con=DriverManager.getConnection(url,pro);
8连接informix数据库
Class.forName("com.informix.JDBC.ifxDriver");
String url="JDBC:informix-sqli:localhost:1533/testDb:INFORMIXSERVER=myserver"user=testUser;password=testpassword"; Connection con=DriverManager.getConnection(url);
⑵ 如何使用JDBC连接oracle数据库
楼主您好
1.在动手先代码之前,我们先把环境配置妥善。先从安装了Oracle的数据库服务器中,找到
Oracle安装目录,然后将该目录下的jdbc\lib\classes12.jar文件拷贝到WEB发布服务器的某个目录。假设就直接放在C:\根目录下吧,然后把该路径添加到„系统--高级--环境变量‟
中变量名为„CLASSPATH‟的值中,如:
D:\Program Files\SQLLIB\java\db2java.zip;D:\Program
Files\SQLLIB\java\runtime.zip;c:classes12.jar;
也就是让java能够找到这个包。
2
1.注册加载驱动
驱动名:DRIVER="oracle.jdbc.driver.OracleDriver";
Class.forName("驱动类名");
3
2.获得连接
数据库地址: URL="jdbc:oracle:thin:@127.0.0.1:1521:ORCL";
Connection conn = DriverManager.getConnection(数据库地址,用户名,密码);
System.out.println("连接成功");
4
3.创建Statement对象
Statement
类的主要是用于执行静态 SQL 语句并返回它所生成结果的对象。通过Connection 对象的
createStatement()方法可以创建一个Statement对象。例如:Statement statament =
connection.createStatement(); 具体示例创建Statement对象
Statement statamentMySQL =connectMySQL.createStatement();
⑶ 如何利用JDBC连接并操作Oracle数据库
S1、下载ojdbc14.jar驱动文件,并将该文件放到你的项目中去;
S2、在MyEclipse中的项目中添加Oracle驱动程序:在项目名上右键->BuildPath->AddExternalArchiver然后选择你刚才放在项目中的文件,点确定即可。
S3、打开Oracle的各项服务,并在Oracle中建一张表。
S4、编写MyEclipse与Oracle的连接程序:
[cpp]viewplainprint?<SPANstyle="FONT-SIZE:16px">importjava.sql.Connection;
importjava.sql.DriverManager;
importjava.sql.PreparedStatement;
importjava.sql.ResultSet;
importjava.sql.Statement;
importjava.sql.*;
publicclassJDBC_Test{
//orcl为oracle数据库中的数据库名,localhost表示连接本机的oracle数据库
//1521为连接的端口号
privatestaticStringurl="jdbc:oracle:thin:@localhost:1521:orcl";
//system为登陆oracle数据库的用户名
privatestaticStringuser="system";
//manager为用户名system的密码
privatestaticStringpassword="manager";
publicstaticConnectionconn;
;
publicstaticResultSetrs;
publicstaticStatementst;
//连接数据库的方法
publicvoidgetConnection(){
try{
//初始化驱动包
Class.forName("oracle.jdbc.driver.OracleDriver");
//根据数据库连接字符,名称,密码给conn赋值
conn=DriverManager.getConnection(url,user,password);
}catch(Exceptione){
//TODO:handleexception
e.printStackTrace();
}
}
//测试能否与oracle数据库连接成功
publicstaticvoidmain(String[]args){
JDBC_Testbase=newJDBC_Test();
base.getConnection();
if(conn==null){
System.out.println("与oracle数据库连接失败!");
}else{
System.out.println("与oracle数据库连接成功!");
}
}
}
</SPAN>
importjava.sql.Connection;
importjava.sql.DriverManager;
importjava.sql.PreparedStatement;
importjava.sql.ResultSet;
importjava.sql.Statement;
importjava.sql.*;
publicclassJDBC_Test{
//orcl为oracle数据库中的数据库名,localhost表示连接本机的oracle数据库
//1521为连接的端口号
privatestaticStringurl="jdbc:oracle:thin:@localhost:1521:orcl";
//system为登陆oracle数据库的用户名
privatestaticStringuser="system";
//manager为用户名system的密码
privatestaticStringpassword="manager";
publicstaticConnectionconn;
;
publicstaticResultSetrs;
publicstaticStatementst;
//连接数据库的方法
publicvoidgetConnection(){
try{
//初始化驱动包
Class.forName("oracle.jdbc.driver.OracleDriver");
//根据数据库连接字符,名称,密码给conn赋值
conn=DriverManager.getConnection(url,user,password);
}catch(Exceptione){
//TODO:handleexception
e.printStackTrace();
}
}
//测试能否与oracle数据库连接成功
publicstaticvoidmain(String[]args){
JDBC_Testbase=newJDBC_Test();
base.getConnection();
if(conn==null){
System.out.println("与oracle数据库连接失败!");
}else{
System.out.println("与oracle数据库连接成功!");
}
}
}
S5、如果上述的连接已经建立,就可以利用JDBC中的JavaAPI对数据库进行操作了,具体的查询,插入,删除,更新操作如下:
[cpp]viewplainprint?<SPANstyle="FONT-SIZE:16px">代码转载自:http://blog.csdn.net/cxwen78/article/details/6863696
importjava.sql.Connection;
importjava.sql.DriverManager;
importjava.sql.ResultSet;
importjava.sql.SQLException;
importjava.sql.Statement;
publicclassJDBC_Test{
//创建静态全局变量
staticConnectionconn;
staticStatementst;
publicstaticvoidmain(String[]args){
insert();//插入添加记录
update();//更新记录数据
delete();//删除记录
query();//查询记录并显示
}
/*插入数据记录,并输出插入的数据记录数*/
publicstaticvoidinsert(){
conn=getConnection();//首先要获取连接,即连接到数据库
try{
Stringsql="INSERTINTOstaff(name,age,sex,address,depart,worklen,wage)"
+"VALUES('Tom1',32,'M','china','Personnel','3','3000')";//插入数据的sql语句
st=(Statement)conn.createStatement();//创建用于执行静态sql语句的Statement对象
intcount=st.executeUpdate(sql);//执行插入操作的sql语句,并返回插入数据的个数
System.out.println("向staff表中插入"+count+"条数据");//输出插入操作的处理结果
conn.close();//关闭数据库连接
}catch(SQLExceptione){
System.out.println("插入数据失败"+e.getMessage());
}
}
/*更新符合要求的记录,并返回更新的记录数目*/
publicstaticvoipdate(){
conn=getConnection();//同样先要获取连接,即连接到数据库
try{
Stringsql="updatestaffsetwage='2200'wherename='lucy'";//更新数据的sql语句
st=(Statement)conn.createStatement();//创建用于执行静态sql语句的Statement对象,st属局部变量
intcount=st.executeUpdate(sql);//执行更新操作的sql语句,返回更新数据的个数
System.out.println("staff表中更新"+count+"条数据");//输出更新操作的处理结果
conn.close();//关闭数据库连接
}catch(SQLExceptione){
System.out.println("更新数据失败");
}
}
/*查询数据库,输出符合要求的记录的情况*/
publicstaticvoidquery(){
conn=getConnection();//同样先要获取连接,即连接到数据库
try{
Stringsql="select*fromstaff";//查询数据的sql语句
st=(Statement)conn.createStatement();//创建用于执行静态sql语句的Statement对象,st属局部变量
ResultSetrs=st.executeQuery(sql);//执行sql查询语句,返回查询数据的结果集
System.out.println("最后的查询结果为:");
while(rs.next()){//判断是否还有下一个数据
//根据字段名获取相应的值
Stringname=rs.getString("name");
intage=rs.getInt("age");
Stringsex=rs.getString("sex");
Stringaddress=rs.getString("address");
Stringdepart=rs.getString("depart");
Stringworklen=rs.getString("worklen");
Stringwage=rs.getString("wage");
//输出查到的记录的各个字段的值
System.out.println(name+""+age+""+sex+""+address
+""+depart+""+worklen+""+wage);
}
conn.close();//关闭数据库连接
}catch(SQLExceptione){
System.out.println("查询数据失败");
}
}
/*删除符合要求的记录,输出情况*/
publicstaticvoiddelete(){
conn=getConnection();//同样先要获取连接,即连接到数据库
try{
Stringsql="deletefromstaffwherename='lili'";//删除数据的sql语句
st=(Statement)conn.createStatement();//创建用于执行静态sql语句的Statement对象,st属局部变量
intcount=st.executeUpdate(sql);//执行sql删除语句,返回删除数据的数量
System.out.println("staff表中删除"+count+"条数据 ");//输出删除操作的处理结果
conn.close();//关闭数据库连接
}catch(SQLExceptione){
System.out.println("删除数据失败");
}
}
/*获取数据库连接的函数*/
(){
Connectioncon=null;//创建用于连接数据库的Connection对象
try{
Class.forName("com.mysql.jdbc.Driver");//加载Mysql数据驱动
con=DriverManager.getConnection(
"jdbc:mysql://localhost:3306/myuser","root","root");//创建数据连接
}catch(Exceptione){
System.out.println("数据库连接失败"+e.getMessage());
}
returncon;//返回所建立的数据库连接
}
}
</SPAN>
⑷ 请教JDBC怎么连接ORACLE数据库
找到你安装的oracle文件夹,例如我的oracle是装到C:\
则找到路径:C:\oracle\proct\10.2.0\db_1\jdbc\lib
下有一个文件叫class12.jar复制他,在MyEclipse 创建一个web项,创建完成后粘贴到如图位置复制后 驱动导入~
然后导入后 给你个例子看吧 照着例子四部:
package com.livechain.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class TestQuery {
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
//0 准备数据库的连接参数
//相对于不同DBMS,样式是不同的;相对于同一个DBMS的url样式比较固定。
String url = "jdbc:oracle:thin:@192.168.10.100:1521:orcl";
String user = "scott";
String password = "tiger";
//准备好查询语句
String sql = "SELECT * FROM test01";
try {
//1 将数据库驱动类注册到DriverManager
Class.forName("oracle.jdbc.driver.OracleDriver");
//2 作数据库连接(通过DriverManager得到当前应用程序和数据库的对话)
conn = DriverManager.getConnection(url, user, password);
//3 创建Statement对象,用来发送SQL语句
stmt = conn.createStatement();
//4 用Statement对象执行SQL语句,得到查询语句的结果集。
rs = stmt.executeQuery(sql);
//5 取数据
while(rs.next()) {
System.out.println(rs.getInt("tid")+"\t"+rs.getString("tname"));
}
/*while(rs.next()) {
System.out.println(rs.getInt(1)+"\t"+rs.getString(2));
}*/
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
if(rs != null) {
rs.close();
rs = null;
}
if(stmt != null) {
stmt.close();
stmt = null;
}
if(conn != null) {
conn.close();
conn = null;
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
⑸ 如何使用JDBC连接oracle数据库
据我所知,使用jdbc连接上oracle有一种方法:
使用thin连接
由于thin驱动都是纯Java代码,并且使用TCP/IP技术通过java的Socket连接上Oracle数据库,所以thin驱动是与平台无关的,你无需安装Oracle客户端,只需要下载一个thin驱动的jar包,并且将环境变量中的CLASS_PATH变量中加入thin驱动的路径就可以了。Thin驱动虽然与平台无关,也无需安装Oracle客户端,但是有一个致命的缺陷就是性能一般,达不到如OCI方式的企业级的要求。
另外,如果一个oracle数据库对应一台主机,可以使用thin连接;如果一个oracle数据库对应四五台主机(集群服务器),使用thin时,需要把tnsnames.ora文件中的相关数据库的整个连接字符串都拷贝下来,如此才能连接上oracle集群数据库。而这种方法也是和数位同事讨论并Google了大量资料后才发现的。之前我一直以为thin不支持集群数据库的方式。
⑹ 如何使用JDBC连接oracle数据库
给你一个参考的文档
关于使用jdbc连接oracle的各种数据库实现方法
⑺ 怎样利用JDBC连接并操作Oracle数据库
文件用:ojdbc6.jar
/**
*一个非常标准的连接Oracle数据库的示例代码
*/
publicvoidtestOracle()
{
Connectioncon=null;//创建一个数据库连接
PreparedStatementpre=null;//创建预编译语句对象,一般都是用这个而不用Statement
ResultSetresult=null;//创建一个结果集对象
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");//加载Oracle驱动程序
System.out.println("开始尝试连接数据库!");
Stringurl="jdbc:oracle:thin:@127.0.0.1:1521:XE";//127.0.0.1是本机地址,XE是精简版Oracle的默认数据库的SID
//如果是服务名,则用Stringurl="jdbc:oracle:thin:@127.0.0.1:1521/ORCL
Stringuser="system";//用户名,系统默认的账户名
Stringpassword="147";//你安装时选设置的密码
con=DriverManager.getConnection(url,user,password);//获取连接
System.out.println("连接成功!");
Stringsql="select*fromstudentwherename=?";//预编译语句,“?”代表参数
pre=con.prepareStatement(sql);//实例化预编译语句
pre.setString(1,"刘显安");//设置参数,前面的1表示参数的索引,而不是表中列名的索引
result=pre.executeQuery();//执行查询,注意括号中不需要再加参数
while(result.next())
//当结果集不为空时
System.out.println("学号:"+result.getInt("id")+"姓名:"
+result.getString("name"));
}
catch(Exceptione)
{
e.printStackTrace();
}
finally
{
try
{
//逐一将上面的几个对象关闭,因为不关闭的话会影响性能、并且占用资源
//注意关闭的顺序,最后使用的最先关闭
if(result!=null)
result.close();
if(pre!=null)
pre.close();
if(con!=null)
con.close();
System.out.println("数据库连接已关闭!");
}
catch(Exceptione)
{
e.printStackTrace();
}
}
}
⑻ 如何使用JDBC连接oracle数据库
1)首先要有java连接oracle数据库的驱动类,下载好后导入到工程里
2)代码:
import java.sql.*;
public class JDBCTest {
/**
* @param args
* @throws ClassNotFoundException
*/
public static void main(String[] args)
throws ClassNotFoundException, SQLException{
//1.准备参数
String ip = "192.168.0.26";
String sid = "tarena";
String port = "1521";
String dbUser = "openlab";
String dbPassword = "open123";
String driver
= "oracle.jdbc.driver.OracleDriver";
//2.构造驱动实例
Class.forName(driver);
//3.创建连接
//连接字符串是固定的形式,oracle的形式:
String url
= "jdbc:oracle:thin:@"
+ ip + ":" + port + ":" + sid;
Connection conn
= DriverManager.getConnection
(url, dbUser, dbPassword);
//4.执行SQL语句
String sql = "select id, password, name from user_sd1104 " +
"where id = 1001 and password = '1234'";
Statement stmt = conn.createStatement();
ResultSet rs
= stmt.executeQuery(sql);//执行sql语句
while(rs.next()){
int id = rs.getInt(1);
String pwd = rs.getString(2);
String name = rs.getString(3);
System.out.println("welcome," + name);
}
rs.close();
stmt.close();
conn.close();
}
}
⑼ java怎样通过jdbc来访问oracle数据库的存储过程和存储函数
//存储过程create or replace Procere countBySal(
p_sal emp.sal%type,
p_count OUT number
)as
begin
select count(*) into p_count from emp where sal >= p_sql;
end countBySal; //调用步奏import java.sql.CallableStatement; //带哦用存储过程所必须的语句借口
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Types;public class EmpUtil {
public static int countBySal(double sal) throws Exception{
Class.forName("oracle.jdbc.driver.OracleDriver");
String url="jdbc:oracle:thin:@localhost:1521:test";
Connection cn=DriverManager.getConnection(url, "scott", "tiger");
String sql="{call countBySal(?,?)}";//调用存储过程的语句,call后面的就是存储过程名和需要传入的参数
CallableStatement cst=cn.prepareCall(sql);
cst.setDouble(1, sal);//设置in参数的值
cst.registerOutParameter(2, Types.INTEGER);//注册out参数的类型
cst.execute();
int result = cst.getInt(2);
cst.close();
cn.close();
return result;
}
public static void main(String[] args) {
int count;
try {
count = EmpUtil.countBySal(3000);
System.out.println("工资在3000元以上的人数为:"+count);
} catch (Exception e) {
e.printStackTrace();
}
}