oracle10-关于oracle在一条语句向多个表添加数据

问题描述

关于oracle在一条语句向多个表添加数据

我这里有t1,t2,t3三个表,当根据t3和t2中的某些条件做出的判断成立时,向t1和t2中添加数据,能不能这么写
insert all
into t1(t1.column1,t1.column2) values(A,B)
into t2(t2.column1,t2.column2) select t3.column1,
t3.column2 from t3
where not exists
(select 1 from t2,t3 where t2.column1=t3.column1
and t2.column2=t3.column2);
大概就是这样子了,t1的数据是具体的字符,t2的数据是从t3里查到的。

解决方案

大概试验了下 应该是没问题的代码如下
create table student(
sname varchar2(10) not null,
sage number(3)
);

create table course(
cname varchar2(10) not null,
cid number(3)
);

insert into student values('YES',14);
commit;

select * from student;

insert all
into student(sname,sage) values('ABC',12)
into course(cname,cid)
select t3.sname,
t3.sage from student t3
where 2>1;
commit;

select * from student;

select * from course;

解决方案二:

使用查询的结果来插入表,可以阿

时间: 2024-10-18 14:21:29

oracle10-关于oracle在一条语句向多个表添加数据的相关文章

Oracle批量执行sql语句之禁用所有表的外键_oracle

在转移数据库,进行数据导入的时候,遇到一件麻烦事,就是表间外键约束的存在,导致insert频频报错,批量执行sql语句又是顺序执行,没办法我只好手动输入. 然后输入到一半灵光一闪,为什么不先把外键约束全部禁用先呢? 于是我百度到以下资料: oracle 删除(所有)约束 禁用(所有)约束 启用(所有)约束 执行以下sql生成的语句即可 1删除所有外键约束 select 'alter table '||table_name||' drop constraint '||constraint_name

oracle10-关于oracle同时往两张表添加数据的问题

问题描述 关于oracle同时往两张表添加数据的问题 语句如下 declare sacn varchar2(15) :='111'||lpad(seq_no.nextval,12,0); begin insert all into customer(costomer_no,costomer_type) values(sacn,'P') into person(costomer_no,name,tel,address) select ****,ps.name,ps.tel,ps.address f

MySQL一条语句更新多个表的方法

MySQL本身是支持一条update语句更新多个表的,有时候这是非常有用的一个特性. Multiple-table syntax UPDATE [LOW_PRIORITY] [IGNORE] table_references     SET col_name1={expr1|DEFAULT} [, col_name2={expr2|DEFAULT}] -     [WHERE where_condition]</pre> 于是继续找table_references说明:  table_refe

SQL删除语句同时向备份表插入数据

从这里摘抄下来的,觉得很不错,http://www.cnblogs.com/ljhdo/p/5792886.html#3503524 ,以后就用这种方式删除,再也不用担心删除错数据啦!!!                

oracle下一条SQL语句的优化过程(比较详细)_oracle

原来的语句是这样的: select sum(sl0000) from xstfxps2 where dhao00 in ( select dhao00 from xstfxps1 where trunc(ywrq00)=trunc(sysdate) and khdm00='500000003913'); 已用时间: 00: 02: 49.04 Execution Plan ---------------------------------------------------------- 0 S

oracle数据库,SQL语句怎么写,求助

问题描述 oracle数据库,SQL语句怎么写,求助 如果选择的时间间隔是:"1年" 那个就将每年的最后一个数据显示出来 如果选择的时间间隔是:"1月" 那个就将每月的最后一个数据显示出来 如果选择的时间间隔是:"1日" 那个就将每天的最后一个数据显示出来 如果选择的时间间隔是:"1时" 那个就将每小时的最后一个数据显示出来 oracle数据库,SQL语句怎么写,求助 解决方案 按年等日期分组,取每组事件最大的. 解决方案二:

c#-C#向oracle插入多条记录

问题描述 C#向oracle插入多条记录 我需要把这个 richTextBox2中的5条数据,一行一行的插入到oracle中,命令如下: int linecount = richTextBox2.Lines.Length; for (int o = 0; o <= linecount - 1; o++) { string linestr = ""; linestr = richTextBox2.Lines[o]; OracleConnection con = new Oracle

Oracle基础 动态SQL语句

原文:Oracle基础 动态SQL语句 一.静态SQL和动态SQL的概念. 1.静态SQL 静态SQL是我们常用的使用SQL语句的方式,就是编写PL/SQL时,SQL语句已经编写好了.因为静态SQL是在编写程序时就确定了,我们只能使用SQL中的DML和事务控制语句,但是DDL语句,以及会话控制语句却不能再PL/SQL中直接使用,如动态创建表或者某个不确定的操作时,这就需要动态SQL来实现. 2.动态SQL 动态SQL是指在PL/SQL编译时SQL语句是不确定的,如根据用户输入的参数的不同来执行不

oracle-java在页面上做了新增操作,怎么从数据库中导出这条语句?

问题描述 java在页面上做了新增操作,怎么从数据库中导出这条语句? 我在jsp中进行了新增的操作,经理要我将新增的数据,从Oracle数据库中导出指定语句出来,这该怎么做 解决方案 http://zhidao.baidu.com/link?url=Ilb1aAClTd0L_-obhu0aSDjph7RepaBbfKIpkkKKQFSEblnyY3DPMasDB6WQWVNoByFt3iZC4mmjd0aVShgJYK 解决方案二: debug调试打印语句到控制台行不 解决方案三: 要么用ora