关于从两个数据库不同的表中读取数据问题???

关于从两个数据库不同的表中读取数据问题???,第1张

创建dblink分为两个步骤: 1.建立本地服务名 2.-- Create database link create database link TEST.US.ORACLE.COM connect to user identified by pwd using '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = IP)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = orcl) ) ) '曾经参考语句: CREATE DATABASE LINK数据链接名CONNECT TO 用户名 IDENTIFIED BY 密码 USING ‘数据库连接字符串’数据库连接字符串可以用NET8 EASY CONFIG或者直接修改TNSNAMES.ORA里定义. 数据库参数global_name=true时要求数据库链接名称跟远端数据库名称一样 数据库全局名称可以用以下命令查出 SELECT * FROM GLOBAL_NAME查询远端数据库里的表 SELECT …… FROM 表名@数据库链接名附带说下同义词创建: CREATE SYNONYM同义词名FOR 表名CREATE SYNONYM同义词名FOR 表名@数据库链接名

1、打开数据库管理工具,在数据库中新建两个表用于测试,这里,两个表的表结构要一样,分别建立TEST 和 TEST1 目标就是从TEST自动写更新的数据到TEST1中。

2、开启新的SQL查询窗口,创建一个存储过程。意思是将insert到TEST中的数据插入到TEST1中。

3、单击‘执行’,一个名字为‘T’的触发就新建完成了。输入代码:USE [PHCTIAOMA]GO

/****** Object:  Trigger [dbo].[T]Script Date: 10/28/2017 08:37:34 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE trigger [dbo].[T]on [dbo].[TEST]for insertasbegininsert into dbo.TEST1 select ID,NAME,AGES from insertedendGO。

4、展开表结构,能看见刚才新建的触发器‘T’。

5、现在先在TEST表中插入一条数据做测试。INSERT INTO dbo.TEST VALUES('1','Simon','25')。

6、提示插入数据成功两次,再看看TEST1中的数据是否有及时更新过来。SELECT * FROM dbo.TEST1,数据成功写入。


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

原文地址:https://54852.com/sjk/9565311.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存