`
Johnny_GZ
  • 浏览: 179277 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

DBLINK以及其他语法

 
阅读更多
项目中使用到DBLINK,总结了一下:
    当用户要跨本地数据库,访问另外一个数据库表中的数据时,本地数据库中必须创建了远程数据库的dblink,通过dblink本地数据库可以像访问本地数据库一样访问远程数据库表中的数据。
    创建dblink一般有两种方式,确保在创建dblink之前该用户已拥有创建dblink的权限。
    摘抄网上关于权限的查看方法,以sys用户登录到本地数据库:

  select * from user_sys_privs t

  where t.privilege like upper('%link%');

  1 SYS CREATE DATABASE LINK NO

  2 SYS DROP PUBLIC DATABASE LINK NO

  3 SYS CREATE PUBLIC DATABASE LINK NO
  
   1.创建dblink的第一种方式,是在本地数据库tnsnames.ora文件中配置了要远程访问的数据库。

  create public database link

  to_remote connect to test identified by 12345 using 'remoteDB';

  其中to_remote是你创建的dblink名字,'remoteDB'是远程数据库的实例名,test/12345是登录到远程数据库的用户/密码。然后在本地数据库中通过dblink访问远程数据库'remoteDB'中tb_test表,sql语句如下所示

  select * from tb_test@to_remote;

   2.创建dblink的第二种方式,是在本地数据库tnsnames.ora文件中没有配置要访问的远程数据库,

  create database link to_remote

  connect to test identified by 12345

  using '(DESCRIPTION =

  (ADDRESS_LIST =

  (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.22.35)(PORT = 1521))

  )

  (CONNECT_DATA =

  (SERVER = rT)

  (SERVICE_NAME = remoteDB)

  )

  )';
   第二种是把第一种配置在tnsnames.ora文件中的信息,直接放在创建dblink语句后面。
  
    oracle创建序列:
    Create Sequence

  (注释:你需要有CREATE SEQUENCE或CREATE ANY SEQUENCE权限)

  CREATE SEQUENCE emp_sequence

  INCREMENT BY 1 —— 每次加几个

  START WITH 1 —— 从1开始计数

  NOMAXVALUE —— 不设置最大值

  NOCYCLE —— 一直累加,不循环

  CACHE 10;

   只要定义了emp_sequence,你就可以用使CURRVAL,NEXTVAL

  CURRVAL=返回 sequence的当前值

  NEXTVAL=增加sequence的值,然后返回 sequence 值

    2、Alter Sequence

  你需要有sequence的owner,或者拥有ALTER ANY SEQUENCE 权限才能改动sequence. 可以alter除start至以外的所有sequence参数。如果想要改变start值,必须 drop sequence 再 re-create .

  Alter sequence示例:


ALTER SEQUENCE emp_sequence INCREMENT BY 10 MAXVALUE 10000 CYCLE -- 到10000后从头开始 NOCACHE ;


  可以影响Sequence的初始化参数:

  SEQUENCE_CACHE_ENTRIES =设置能同时被cache的sequence数目。

  简单的Drop Sequence

  DROP SEQUENCE order_seq;

1
0
分享到:
评论

相关推荐

    oracle dblink 创建过程

    可以使用`@dblink`语法来查询远程数据库中的表: ```sql SELECT * FROM bctl@creditdb; ``` 2. **创建同义词** 为了方便使用,还可以为远程表创建同义词: ```sql CREATE SYNONYM syn_bctl FOR bctl@...

    dblink实战

    在本文档中,我们将详细介绍dblink的概念、创建方法、使用方式以及注意事项。 一、 dblink 概念 dblink是Oracle数据库的一种链接机制,允许用户在不同的Oracle数据库服务器之间建立连接,以便实现数据共享和交换。...

    建立DBLINK连接串

    创建DBLINK的基本语法如下: ```sql CREATE DATABASE LINK link_name CONNECT TO username IDENTIFIED BY password USING '(DESCRIPTION=(ADDRESS=(PROTOCOL=protocol)(HOST=host_address)(PORT=port))(CONNECT_...

    DBLINK创建方法

    #### 创建DBLINK的基本语法 创建DBLINK的基本语法如下: ```sql CREATE [PUBLIC] DATABASE LINK link_name USING 'connection_string' [CONNECT TO username IDENTIFIED BY password]; ``` - `CREATE [PUBLIC] ...

    Oracle DATABASE LINK(DBLINK)创建与删除方法

    如果在尝试关闭或删除DBLINK时遇到 `ORA-02080: database link is in use` 的错误,可能是因为DBLINK正被其他会话使用。可以查询 `v$dblink` 视图来检查DBLINK的状态,或者等待当前使用DBLINK的会话结束,或者强制...

    oracle 存储过程 函数 dblink

    本文主要介绍了Oracle存储过程的概念、创建和调用方法,以及如何使用DBLink实现跨库操作。存储过程提供了强大的数据库处理能力,而DBLink则使得不同数据库实例之间的交互变得更加方便和高效。掌握这些技术对于提高...

    直接建立dblink

    - 在Oracle中,创建DBLink的语法如下所示: ```sql CREATE DATABASE LINK db_link_name CONNECT TO username IDENTIFIED BY password USING '(DESCRIPTION= (ADDRESS_LIST= (ADDRESS=(PROTOCOL=protocol)...

    Oracle-不同数据库DBLINK导数据使用说明

    其中,数据库链接(DBLINK)是Oracle提供的一种高级特性,用于实现不同Oracle数据库之间的数据交互,尤其适用于数据迁移、分布式事务处理以及跨数据库查询等场景。本文将围绕“Oracle-不同数据库DBLINK导数据使用...

    oracle DBLink

    例如,当需要将Oracle数据库的数据同步到MSSQL Server时,DBLink可以作为一种解决方案,但需要注意的是,由于Oracle和MSSQL Server的SQL语法差异,可能需要额外的转换层来处理兼容性问题。 在《Oracle与MSSql对接...

    oracle使用dblink的例子

    创建DBLink的基本语法如下: ```sql CREATE DATABASE LINK db_link_name CONNECT TO username IDENTIFIED BY password USING 'network_protocol'; ``` 其中: - `db_link_name`:定义DBLink的名称。 - `username` 和...

    Oracle dblink详解

    创建dblink的基本语法如下: ```sql CREATE [SHARED][PUBLIC] DATABASE LINK link_name [CONNECT TO [user][current_user] IDENTIFIED BY password] [AUTHENTICATED BY user IDENTIFIED BY password] [USING '...

    dblink创建语句

    ### dblink创建语句知识点详解 ...通过以上详细的解析,我们不仅了解了如何创建dblink,还对其背后的原理、创建步骤以及注意事项有了深入的理解。这对于日常工作中需要处理跨库数据的应用场景有着重要的指导意义。

    oracle数据库在客户端建立dblink语法

    具体到给出的示例代码,创建DBLink的语法如下: ```sql CREATE DATABASE LINK dblink_name CONNECT TO user_name IDENTIFIED BY user_psw USING '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP...

    Oracle10g通过DBLink访问MySQL数据

    - 选择“MySQL ODBC驱动程序”,并按照提示填写相应的连接信息,包括MySQL服务器的主机名、端口、数据库名以及登录凭据。 2. **在Oracle中创建DBLink**: - 使用以下SQL语句在Oracle数据库中创建DBLink。这里假设...

    数据库dblink.pdf

    同义词(SYNONYM)是数据库中的一个对象,它为表、视图或其他数据库对象提供一个别名。创建远程数据库表的同义词,可以简化访问远程数据的语法,例如: - `CREATE SYNONYM 同义词名 FOR 表名;` - `CREATE SYNONYM...

    MySQL federated引擎 实现类似oracle dblink功能

    创建Federated表的语法如下: ```sql CREATE TABLE local_table ( column1 datatype1, column2 datatype2, ... ) ENGINE=FEDERATED CONNECTION='mysql://user:password@server:port/remote_database_name/remote_...

    oracle dblink详解.pdf

    ### Oracle DBLink 详解 #### 一、Database Link 概述 Database Link 是 Oracle 数据库中用于连接两个数据库的关键对象,它可以实现从一个数据库到另一个数据库的数据查询与操作。通过 Database Link,用户能够...

    SQL SERVER 2005 DBLink to ORACLE 设置方法

    ### SQL Server 2005 与 Oracle 10g 之间建立 DBLink 的设置方法及常见问题解决方案 #### 一、概述 在 IT 领域中,跨数据库的操作非常常见,尤其是在需要从不同数据库系统中提取数据并进行集成处理的场景下。SQL ...

    创建DBLink的一个文档

    创建DBLink的基本语法 - **基本语法**: ```sql CREATE [PUBLIC] DATABASE LINK link_name CONNECT TO username IDENTIFIED BY password USING connect_string; ``` - `PUBLIC`:表示该DBLink对所有用户可见并...

Global site tag (gtag.js) - Google Analytics