oracle建表如果存在先删除 oracle创建表之前判断表是否存在,如果存在则删除已有表?
oracle创建表之前判断表是否存在,如果存在则删除已有表?
1、创建删表函数,createorreplaceproceduredrop_table(tbl_namevarchar2)as v_cntnumber begin selectcount(*)intov_cntfromuser_tablestwheretable_name=upper(tbl_name) --如果存在则删除 ifv_cnt>0then executeimmediate"droptable"||tbl_name||"purge" dbms_output.put_line("删除表("||tbl_name||")成功") else dbms_output.put_line("表("||tbl_name||")未建") endifend2、编译该函数,是函数可以正常执行,3、测试函数,输入不存在的表名test_aaa4、查看输出窗口,为,表未建,5、再次测试函数,输入存在的表名,6、查看输出窗口,表已删除,
oracle创建表之前判断表是否存在,如果存在则删除已有表?
按照你的描述可以用range分区"alter table 表名 add partition 分区名字 values less than 值 tablespace 表空间" 例子:alter table test1 add partition P20160501 values less than (to_date("20160601","yyyymmdd")) tablespace S2------这样就可以加入5月份的分区
Oracle如何判断是否存在某张表?
在ORACLE中可以通过查询数据字典判断.如果判断当前模式下是否存在,可以查user_tablesifexists(select1fromuser_tableswheretable_name="表名")......如果判断所有模式下是否存在,则需要连接system或者sys.然后查user_tablesconnsystem/密码(或者connsys/密码assysdba)ifexists(select1fromdba_tableswheretable_name="表名")......注意:以上表名全部需要用大写字母.省略号表示判断之后需要执行的语句.
oracle建表如果存在先删除 如果存在就删除 oracle数据库
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。