mac版Navicat如何设置重新打开后保持上次选项卡,在使用Navicat客户端时,我们可以设置重新打开客户端,保持上次打开的选项卡的,这个功能在哪里设置?我们来看一下。......
如何实现数据库表间通讯
数据库搭建的时候,经常有将一个表的数据写到另一个表的需求。今天介绍数据库表之间的通讯,使用存储过程将a表中的数据写入到b表中,实现数据库表之间的通讯。
工具/原料
- oracle数据库
- PL/软件SQL
方法/步骤
1.现在有表test1,如下,具体创建过程,请参考百度经验《如何使用PL/SQL软件创建ORACLE表》。
2、 同样使用建表语句,创建中间表。
-- Create table
create table test_temp
(
NENGYUAN_NAME VARCHAR2(20),
CONSUME NUMBER(10,2),
NENGYUAN_TIME DATE,
ID NUMBER(4),
ETYPE VARCHAR2(20)
)
tablespace temp
pctfree 10
initrans 1
maxtrans 255
storage
(
initial 64K
minextents 1
maxextents unlimited
);
--Add comments to the table
comment on table test_temp
is '中间数据';
-- Add comments to the columns
comment on column test_temp.NAME
is '名';
comment on column test_temp.liang
is '量';
comment on column test_temp.TIME
is '时间';
comment on column test_temp.ID
is '号';
comment on column test_temp.type
is '类型';
查询,建表完毕。
4、输入SQL语句,插入数据。
insert into test_temp (NENGYUAN_NAME, CONSUME, NENGYUAN_TIME, ID, ETYPE)
values ('测试1', 2500, to_date('16-07-2016 20:50:27', 'dd-mm-yyyy hh24:mi:ss'), 110, '110')。
5、查询数据,写入成功。
6、 创建存储过程,将表test1中的数据,写入test_temp表中。
2、 CREATE OR REPLACE PROCEDURE PRO_test AS
3、 TYPE REF_CUR IS REF CURSOR;
4、 C_T REF_CUR;
5、 R_C TB_TAG_RCV%ROWTYPE;
6、 STRSQL VARCHAR2(1000);
7、 St VARCHAR2(50);
8、 Tt VARCHAR2(50);
9、 BEGIN
10、
11、 St:=to_char(sysdate-1,'YYYY-MM-DD')||' 20:00:00';
12、
13、 STRSQL := 'SELECT * FROM test1 WHERE ID>0 ' ;
14、 OPEN C_T FOR STRSQL;
15、 LOOP
16、 FETCH C_T
17、 INTO R_C;
18、 EXIT WHEN C_T%NOTFOUND;
19、 INSERT INTO test_temp
20、 (nengyuan_name,
21、 consume,
22、 nengyuan_time,
23、 ID,
24、 etype
25、 )
26、 VALUES
27、 (R_C.name_cn ,
28、 R_C.TAG_VALUE,
29、 sysdate,
30、 R_C.ID,
31、 R_C.ID
32、 );
33、
34、 LOOP;
35、 CLOSE C_T;
36、 COMMIT;
47、 PRO_test。
7、点击执行存储过程,发现有错误。
8、检查,选择重新编译,报错“已被编译,但有错误”。
ang=EN-US>
9、检查存储过程代码,发现 “ R_C test1%ROWTYPE;”处,将test1写为test,修改后执行正常。
10、右键点击存储过程“PRO_test”,选择“测试”。
11、点击“开始调试器”,“单步进入”,执行测试该过程,
span>”,选择“测试”。
12、输入变量值,进行监视。
13、逐步执行。
14、执行完毕,显示如下。
15、我们可以看到表test1中的数据写入了test_temp中,我们实现了功能将一个表写入另一个表,实现了数据库之间的数据通讯。
注意事项
- 注意1:该种方式是基于ORACLE数据库。
- 注意2:,该种方式采用PL/SQL工具进行的操作。
以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!
标签: 数据库
相关文章
- 详细阅读
-
SQL Server 2005数据库恢复图文教程详细阅读
SQL Server 2005数据库恢复图文教程,相信很多的站长网站的时候需要用到SQLServer2005数据库,但是碰到一些问题没有办法恢复,本人专业学习的.et。平时也经常用到,希望能给大家带来......
2023-03-17 513 数据库
-
如何安装SQL Server 2008数据库(带完整图解)详细阅读
如何安装SQL Server 2008数据库(带完整图解),在电脑上安装SQLServer2008软件时,经常会遇到各种各样的问题,如何成功的安装SQLServer2008呢?提供完整过程和图片详解。......
2023-03-17 532 数据库