ORACLE如果存在表就刪除不存在就建立

2022-09-16 12:48:13 字數 776 閱讀 6645

最近做資訊採集,總是需要建立臨時表,一同連線8個庫同時開展。

但是oracle裡面沒有像sqlserver那樣的

if exists (select * from dbo.sysobjects where id = object_id(n'[dbo].[hy_bscdnm_j]') and objectproperty(id, n'isusertable') = 1)

drop table [dbo].[hy_bscdnm_j]

gocreate table .......

為避免總是要去點選sure,所以參考了網上的方法,在建立臨時表的時候,省去點選的麻煩。

待採集指令碼寫完全,一步執行到位等待結果的匯出,省大量時間去完成下個request。

declare

i integer;

begin

select count(*) into i from user_tables where table_name = 'xb_test001';

if i > 0 then

dbms_output.put_line('該錶已存在!');

execute immediate 'drop table xb_test001';

else

dbms_output.put_line('該錶不存在');

end if;

execute immediate 'create table xb_test001(id int primary key,name varchar(50))';

end;

Sql server如果存在就更新,不存在就插入

sql不同於mysql那樣,有單獨的乙個命令來執行上述操作,比如在mysql中就可以這樣寫 replace into demo in a,b,c values 123,2,4 在mysql中這是乙個原子操作,如果這條資料存在,就先刪除在插入,不存在就直接插入.要注意的是需要有乙個唯一的主鍵支援,如果...

MySQL實現如果存在就更新,不存在就寫入

最近的業務中,有這樣乙個需求 如果資料存在就更新,不存在就寫入,一般情況下是需要先查詢,後判斷是更新還是寫入的,需要進行兩次io操作。所以為了減少同步時間,第乙個思路是使用併發,第二種思路就是應該儘量減少請求mysql的次數,這裡將講講第二種思路。正常情況下實現 如果存在就更新,不存在就寫入的偽 偽...

建立表之前判斷表是否存在,如果存在則刪除已有表

轉至 1.sqlserver資料庫 在sqlserver中,建立表之前判斷表是否存在,如果存在則刪除已有表 sql server if exists select 1 from sysobjects where id object id emp and type u drop table s eva...