怎么用pl/sql语句 ,判断一个表,和序列是否存在,如果存在就删除,重建呢?
这里是我写的 SQL Server上的 Oracle上怎么写呢
if exists (select 1
from sysobjects
where id = object_id('dbo.Admins')
and type = 'U')
drop table dbo.Admins
gocreate table dbo.Admins (
Admname varchar(50) not null,
Admpwd varchar(50) not null,
constraint PK_ADMIN primary key clustered (Admname)
)
go
这里是我写的 SQL Server上的 Oracle上怎么写呢
if exists (select 1
from sysobjects
where id = object_id('dbo.Admins')
and type = 'U')
drop table dbo.Admins
gocreate table dbo.Admins (
Admname varchar(50) not null,
Admpwd varchar(50) not null,
constraint PK_ADMIN primary key clustered (Admname)
)
go
AS
i INTEGER;
BEGIN
BEGIN
/*
需要有个显示的授权:
grant create table to usename;
*/
SELECT COUNT (*)
INTO i
FROM user_tables
WHERE table_name = UPPER ('T3'); IF i = 0
THEN
EXECUTE IMMEDIATE 'CREATE TABLE T3(ID NUMBER NOT NULL, price NUMBER NOT NULL)';
END IF; EXECUTE IMMEDIATE 'INSERT INTO T3(ID,price) VALUES(:1,:2)' using iid,iprice;
COMMIT;
EXCEPTION
WHEN OTHERS
THEN
ROLLBACK;
END;
END;
/