社区
Oracle
帖子详情
怎么没有create or replace table
overmind
2005-03-17 03:20:47
在pl/sql里面,如果想要先drop table 再create table这样的sql语句怎么写?
...全文
2271
13
打赏
收藏
怎么没有create or replace table
在pl/sql里面,如果想要先drop table 再create table这样的sql语句怎么写?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
overmind
2005-03-17
打赏
举报
回复
怎么判断一个表是否存在??
bzszp
2005-03-17
打赏
举报
回复
没有什么更好的方式了。
lcg412
2005-03-17
打赏
举报
回复
如果已知有此表
drop table tb1
create table tb1 ( a varchar2(2));
如果不確定有此表
DECLARE INTA NUMBER;
BEGIN
SELECT COUNT(1) INTO INTA FROM TAB WHERE TNAME='TB1';
IF INTA=0
BEGIN
EXECUTE IMMEDIATE 'CREATE TABLE TB1 ( A VARCHAR2(2))';
END;
END IF;
END
yxxx
2005-03-17
打赏
举报
回复
什么才算“更好的方法”?
bzszp
2005-03-17
打赏
举报
回复
SQL> begin
2 execute immediate 'drop table tb1';
3 execute immediate 'create table tb1(
4 aa number,
5 bb number)';
6 end;
7 /
PL/SQL 过程已成功完成。
SQL> desc tb1;
名称 是否为空? 类型
----------------------------------------- -------- ------
AA NUMBER
BB NUMBER
SQL>
有什么错误提示?
overmind
2005-03-17
打赏
举报
回复
declare
begin
execute immediate 'drop table students';
execute immediate 'create table students(
id number(5) primary key,
first_name varchar2(20),
last_name varchar2(20),
major varchar2(30),
current_credits number(3)
)';
end;
确实可以了,各位达人有没有什么更好的办法。
yxxx
2005-03-17
打赏
举报
回复
declare去掉
end后面加分号
overmind
2005-03-17
打赏
举报
回复
我不知道问什么oracle这么费劲,在sql server里,drop create就搞定了。
痛苦啊~~
overmind
2005-03-17
打赏
举报
回复
declare
begin
execute immediate 'drop table students';
execute immediate 'create table students(
id number(5) primary key,
first_name varchar2(20),
last_name varchar2(20),
major varchar2(30),
current_credits number(3)
)';
end
怎么还是不行啊
baojianjun
2005-03-17
打赏
举报
回复
SQL_TEXT:='drop table tbname'
CUR_ID:=DBMS_SQL.OPEN_CURSOR;
DBMS_SQL.PARSE(CUR_ID,SQL_TEXT,DBMS_SQL.NATIVE);
STAT:=DBMS_SQL.EXECUTE(CUR_ID);
DBMS_SQL.CLOSE_CURSOR(CUR_ID);
overmind
2005-03-17
打赏
举报
回复
如果不用excute immediate呢?
baojianjun
2005-03-17
打赏
举报
回复
呵呵,如上
bzszp
2005-03-17
打赏
举报
回复
begin
execute immediate 'drop table tbname';
execute immeidate 'create table tbname ...';
end;
/
oracle
没有
create
or
replace
table
转自:http://tunps.com/oracle-
create
-or-
replace
-
table
Oracle数据库和其他数据库(比如MySQL)在新建数据表的...SQL>
create
or
replace
table
testTb;
create
or
replace
table
testTb ORA-00
oracle学习笔记(十二)--oracle
没有
create
or
replace
table
详情点击:https://blog.csdn.net/qq_40588579/article/details/85605194
Oracle
没有
create
or
replace
table
可以用
create
or
replace
的对象有:functions, procedures, packages, types, synonyms, trigger and views,就是
没有
table
,也
没有
sequence。 drop掉一个并不存在的表报错: Sql代码 SQL> drop
table
...
Oracle数据库
create
or
replace
create
or
replace
表示在创建视图时,如果已存在同名的视图,则重新创建, 如果只用
create
创建,则需将原有的视图删除后才能创建.
create
如果创建已经存在,会报一个错误 -‘对象已存在’
create
or ...
oracle
create
replace
,Oracle11gr2新增
CREATE
OR
REPLACE
FORCE TYPE功能
在以前的版本中,如果表或另一个对象依赖当前的对象,那么这个对象是无法
CREATE
OR
REPLACE
的,在11.2中,这个限制被放宽,当依赖当前对象的对象是对象时,允许使用
CREATE
OR
REPLACE
FORCE来重建对象;如果依赖当前...
Oracle
17,086
社区成员
55,238
社区内容
发帖
与我相关
我的任务
Oracle
Oracle开发相关技术讨论
复制链接
扫一扫
分享
社区描述
Oracle开发相关技术讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章