我写了一个.sql文件用来建表,问题是我怎么在这个文件中判断这个表名是否被使用?  

[复制链接]
查看11 | 回复9 | 2008-8-8 12:44:01 | 显示全部楼层 |阅读模式
思路:
如果已有同名的表,就删除原有的表,然后重建一个表,如果没有就直接建一个新的表,所有的sql写的一个.sql文件中,应该怎么写啊:
这是我现在的
create table menu(menuid number(10) primary key,menustate number(2),menutypeid number(5),menuorder number(2),menuno number(2),menuname varchar2(40),menusrc(100));
create sequence menuid increment by 1 start with 1 nomaxvalue nocycle;
如果表menu已存在,怎么处理?
回复

使用道具 举报

千问 | 2008-8-8 12:44:01 | 显示全部楼层
create or replace table
后面和你的一样
回复

使用道具 举报

千问 | 2008-8-8 12:44:01 | 显示全部楼层
you can search from user_tables.
回复

使用道具 举报

千问 | 2008-8-8 12:44:01 | 显示全部楼层
sequence是不是也是用create or replace?
回复

使用道具 举报

千问 | 2008-8-8 12:44:01 | 显示全部楼层
其实效果不一样么?
或者先spool一个drop脚本
回复

使用道具 举报

千问 | 2008-8-8 12:44:01 | 显示全部楼层
表不存在,你怎么drop,我本想问是如何写一个脚本判断数据库中已存在这个表
回复

使用道具 举报

千问 | 2008-8-8 12:44:01 | 显示全部楼层
或者你spool生成一个不也可以么?
回复

使用道具 举报

千问 | 2008-8-8 12:44:01 | 显示全部楼层
If you want to keep old grant, use create or replace,
otherwise drop . From your post, it seems that dropping
is what you really want. If you dont like that error msg, trap
exception.
回复

使用道具 举报

千问 | 2008-8-8 12:44:01 | 显示全部楼层
為什麼我使用create or replace table 的時候總時出錯:ORA-00922: missing or invalid option?
回复

使用道具 举报

千问 | 2008-8-8 12:44:01 | 显示全部楼层
http://www.itpub.net/showthread.php?s=&threadid=81426
最初由 willing_star 发布
[B]為什麼我使用create or replace table 的時候總時出錯:ORA-00922: missing or invalid option? [/B]

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行