十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
以java连接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();
}
}
你在做什么,sqlserver中的连接服务器吗?
你的sqlserver所在服务器是64位的,oracle在另一台服务器上,是32位的?
如果是的话,你在64位的机器上安装完整的64位的oracle客户端,然后继续使用oledb连接oracle试试。
一般都是创建一个process来调用的,给个模板给你参考:
CREATE OR REPLACE PROCEDURE pro_test() IS
http_req UTL_HTTP.req;
request_env VARCHAR2(32767);
BEGIN
request_env := '
soap:Envelope xmlns:xsi="" xmlns:xsd="" xmlns:soap=""
soap:Body
ProcessData xmlns="你的公司地址(例如:)/"
参数1' || 参数1 || '/参数1
参数2' || 参数2 || '/参数2
/ProcessData
/soap:Body
/soap:Envelope
';
http_req := UTL_HTTP.
begin_request('http://' || 你的ServerIP || 'WebService地址',
'POST',
UTL_HTTP.http_version_1_1);
UTL_HTTP. set_header(http_req, 'Content-Type', 'text/xml; charset=utf-8');
UTL_HTTP. set_header(http_req, 'Content-Length', LENGTH(request_env));
UTL_HTTP. set_header(http_req,
'SOAPAction',
'"你的WebService Function_name"');
UTL_HTTP.write_text(http_req, request_env);
UTL_HTTP.END_REQUEST(HTTP_REQ);
END IF;
END IF;
EXCEPTION
WHEN OTHERS THEN
--Write log
END pro_test;
1、标准接口表2、标准API前者例如AP的发票接口表,供应商、客户接口表,具体实现方式是,将数据按照接口表规格准备到接口表中,然后运行标准的import程序将接口表数据导入到Oracle EBS中(即各接口表对应的正式table中)。
而例如银行、分行、银行帐户相关API,一般通过客户化程序,调用此类API实现将数据导入系统,此时一般也会新建一些客户化staging table,先将外部数据准备到staging table后,再使用客户化程序,调用API将资料导入Oracle EBS中。
通常,“Oracle EBS的接口方式”指的是数据进入Oracle EBS的方式,主要有两类技术:
1、标准接口表
2、标准API
前者例如AP的发票接口表,供应商、客户接口表,具体实现方式是,将数据按照接口表规格准备到接口表中,然后运行标准的import程序将接口表数据导入到Oracle EBS中(即各接口表对应的正式table中)。
而例如银行、分行、银行帐户相关API,一般通过客户化程序,调用此类API实现将数据导入系统,此时一般也会新建一些客户化staging table,先将外部数据准备到staging table后,再使用客户化程序,调用API将资料导入Oracle EBS中。
而DBLINK则是数据库之间的资料交换方式,假如Oracle EBS的数据库需要与其他数据库(例如其他系统的数据库)进行资料交互,那么DBLINK是其中一个选项而已。
以上,两者直接比较没有太大意义,完全可能是应用于不同业务场景下的技术。