如何在oracle中取到sqlserver数据库中的数据

如何在oracle中取到sqlserver数据库中的数据,第1张

试试用DBLink连到另外一个库上:

-- Create database link

create public database link 名字

connect to user identified by password

using '(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = IP)(PORT = PORT)))(CONNECT_DATA = (SERVICE_NAME = SID)))'

使用时候 可以使用select × from TB名@DBLink_Name

链接数据库用到JDBC,一般链接数据库都要用到数据库驱动、链接字符串、登录名、登录密码。这4个属性可以提取到一个父类中,每一种数据库写一个类继承父类。要是这些都没问题了,就可以用楼上哥们儿说的,简单工厂模式,简单工厂是用到了java中的多态特性。 import java.sql.Connectionpublic abstract class BaseConnect { public BaseConnect(String driverClass, String url, String loginName, String password) { super()this.driverClass = driverClassthis.url = urlthis.loginName = loginNamethis.password = password} protected String driverClassprotected String urlprotected String loginNameprotected String passwordpublic abstract void initDriver()public abstract Connection getConnect()public abstract void closeConnect(Connection conn)} import java.sql.Connectionimport java.sql.DriverManagerimport java.sql.SQLExceptionpublic class OraclConnect extends BaseConnect { public OraclConnect(String driverClass, String url, String loginName, String password) { super(driverClass, url, loginName, password)// TODO Auto-generated constructor stub } @Override public void initDriver() { try { Class.forName(driverClass)} catch (ClassNotFoundException e) { e.printStackTrace()} } @Override public Connection getConnect() { try { return DriverManager.getConnection(url, loginName, password)} catch (SQLException e) { e.printStackTrace()} return null} @Override public void closeConnect(Connection conn) { try { if (conn != null &&!conn.isClosed()) { conn.close()} } catch (SQLException e) { e.printStackTrace()} } } 以此类推,上面代码是我随便一写,你自己再改进下。蓝屏


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/6648633.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存