2016-10-08 85 views
0

如何在向表中插入值時使用WHERE子句?ORACLE中的WHERE子句

我想下面的查詢將值插入列爲準設置地址=「COB」

insert into table empt (loc,country,mob) 
values ('&loc','&country',&mob) 
where address='COB'; 
+0

使用的SQL語句,則拋出我的SQL錯誤:ORA-00903:無效的表名 00903. 00000 - 「無效的表名」但我有表 –

+0

「WHERE」子句用於限制結果集f從「SELECT」開始,但在INSERT的上下文中沒有意義。你是否試圖插入從另一個表中選擇的值? –

回答

0
insert into table empt (loc,country,mob) 
select loc,country,&mob 
where address='COB'; 
1

這看起來像您可能需要使用update如果字段已經存在於表 -

update empt 
    set loc =?, country = ?, mob=? 
where address ='COB'; 
+0

非常感謝Ltaylor –

0

我不知道,你爲什麼在插入語句中使用「表」。

INSERT

insert into empt (loc,country,mob) 
values ('&loc','&country',&mob) 

希望你需要更新。

UPDATE

Update empt 
Set loc = '&loc', 
country = '&country', 
mob = &mob 
where address='COB'; 

請參閱在Oracle

https://docs.oracle.com/database/121/TDDDG/tdddg_dml.htm#TDDDG23100

+0

非常感謝Vipin :) –