UPDATE tableA SET col1 = 'a'
WHERE col2 = 'b';IF SQL%NOTFOUND THEM
INSERT INTO tableA(col1,col2)
VALUSE('a','b');
END IF;
大概就是这样的了,你自己试试
WHERE col2 = 'b';IF SQL%NOTFOUND THEM
INSERT INTO tableA(col1,col2)
VALUSE('a','b');
END IF;
大概就是这样的了,你自己试试
解决方案 »
- 100分求救,我把Oracle 的一个用户删除了,又导入了新的数据,如何恢复上次删除的用户的表结构啊!!!!!!!!!!!!!!????????
- 简单的左连接问题
- 救命救命! PL\sql 中如何调用或者执行一个sql文件,或者dos命令?
- 请问怎么给select出来的记录集加个序号列?
- 请问如何将sql2000的数据转换至oracle9i中啊? 急啊~
- help!!
- 为什么每次我的内存利用率都十分高呢!
- 大家讨论一下进行oracle 数据库前台开发最好用什么软件?
- 关于DBA如何知道每种操作系统I/O缓冲区大小的问题,包括windows2000、windows NT、各种Linux版本、Unix等
- 求一个统计查询,多谢
- 问牛人一个sql问题!在线等,急!!!!!!!
- 如何能建立一个列,使得插入数据后系统自动加入序号。
begin
end;这也有错?
14
15 commit;
16 end;
17 /警告: 创建的过程带有编译错误。SQL> show err
PROCEDURE P_SINGLE_BET 出现错误:LINE/COL ERROR
-------- -----------------------------------------------------------------
13/1 PLS-00103: 出现符号 "END"在需要下列之一时:
,;returnreturning
符号 ";" 被替换为 "END" 后继续。
pid in int,pdocid in int,
pperson in CHAR,pmsg IN CHAR
)
as
begin
begin
update diekiss set doc_id = pdocid,person=pperson,message=pmsg where id = pid;
if SQL%NOTFOUND then
insert into diekiss values(pid,pdocid,pperson,pmsg);
end if;
commit;
end;
end update_insert;
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NUMBER(38)
DOC_ID NUMBER(38)
PERSON CHAR(8)
MESSAGE CHAR(16)
begin
update table_name set column1=col1,column2=col2;
if (sql%notfound) then
inser into table values (col1,col2);
end if;
commit;
end;/
user in string,sub in string) as
begin
update single set start_time =starttime ,end_time=endtime where userName=user and subject=sub;
IF SQL%NOTFOUND THEN
INSERT INTO single(id,start_time,end_time,userName,subject)
VALUES(sid,starttime,endtime,user,sub);END IF;commit;
end;我先在就是这样啊,主要是update 太费时了,建了索引并没有加快速度,shared_pool_size,shared_pool_reserved_size要设置成多少啊?是不是越大越好?或者还有别的办法修改sql语句能够加快?