oracle查询不含括号及不含指定字符的方法

oracle查询不含括号不含指定字符的记录方法如下:

 with tmp_t as(
 select 1 as id,'测试4321_CS' as name from dual union all
 select 2,'测试 1200(测试版)' from dual union all
 select 3,'测试123(测试版)' from dual union all
 select 4,'测试 1212(D2)' from dual union all
 select 5,'测试 1212(D2)测试版' from dual union all
 select 6,'测试 123' from dual)
 select *
  from tmp_t
 where instr(name, '_CS') = 0
  and regexp_instr(name, '(.*)') = 0
  and regexp_instr(name, '\(.*\)') = 0

结果为:

其中regexp_instr为Oracle支持的正则表达式函数,其功能与instr相似。此处匹配了含有括号()和()的记录。

(0)

相关推荐

  • Oracle数据库的备份及恢复策略研究

    正在看的ORACLE教程是:Oracle数据库的备份及恢复策略研究. 摘 要 恢复丢失的数据库文件在很大程度上取决于所采用的备份策略.本文从恢复的灵活性出发,对Oracle8数据库的备份及恢复策略进行了探讨,并给出了Windows 2000环境下使备份过程自动化的脚本文件的项目开发实例. 关键词 Oracle 数据库 备份 恢复 引言 随着信息系统在各种商务活动中重要性的不断增强,维护系统数据的可用性已成为当前一个十分重要的课题.为了有效地保持健康的信息系统,必须采取一定的措施防止在由介质.操作

  • oracle 9i使用闪回查询恢复数据库误删问题

    如果用户误删/更新了数据后,作为用户并没有什么直接的方法来进行恢复,他们必须求助DBA来对数据库进行恢复,到了Oracle9i,这一个难堪局面有所改善.Oracle 9i中提供了一项新的技术手段--闪回查询,用户使用闪回查询可以及时取得误操作前的数据,并可以针对错误进行相应的恢复措施,而这一切都无需DBA干预. 因为一时手贱,生产上的数据被我给delete掉了. 用的是delete语句,然后很迅速的还给commit了 下面这两个语句: ALTER TABLE tablename ENABLE r

  • oracle冷备份恢复和oracle异机恢复使用方法

    一.冷备份1. 冷备份发生在数据库已经正常关闭的情况下,在进行冷备份之前通常要知道需要进行备份文件的名称以及路径 复制代码 代码如下: SQL>select name from v$datefile;SQL>select name from v$controlfile;SQL>select member from v$logfile; 2.冷备份所需备份的文件包括以下几种:所有数据文件.所有控制文件.所有联机REDO LOG 文件3.冷备份的步骤①正常关闭要备份的实例(instance)

  • Oracle7.X 回滚表空间数据文件误删除处理方法

    正在看的ORACLE教程是:Oracle7.X 回滚表空间数据文件误删除处理方法. ---- 一. 引言: ---- 回滚段是数据库的一部分,它记录数据库变更的信息.使用这些信息实现数据库的读一致性及其恢复.若回滚段出现故障,则数据库不能正常启动,导致数据库瘫痪,用户无法读写数据.若能将回滚段的故障排除,则不会影响用户的实际数据.笔者最近在实际工作中遇到一个问题:用户将回滚段表空间(rbs)的数据库文件(rbs01.dbf)错误删除,以致使数据库无法正常运行,下面上笔者排除该方法的处理步骤. -

  • oracle数据库创建备份与恢复脚本整理

    1:创建用户 复制代码 代码如下: create temporary tablespace user_temp tempfile 'D:\app\topwqp\oradata\orcl\user_temp.dbf' size 500m autoextend on next 50m maxsize 2048m extent management local; create tablespace ts_mydb logging datafile 'D:\app\topwqp\oradata\orcl

  • 优化Oracle停机时间及数据库恢复

    正在看的ORACLE教程是:优化Oracle停机时间及数据库恢复. 这里会讨论令Oracle停机时间最小化的步骤.各种形式的停机--计划的或者是非计划的--总是不断地发生,一个DBA应该有正确的备份策略,这样在数据库出现问题时就可以更快地恢复. 以下是假定的备份策略和数据库的运作条件 控制文件是镜像的 数据库运行在archivelog模式 每个星期都进行冷备份 每日都进行热备份 每日都进行一次全数据库导出 事件1:完整的数据库重构 在这种情形下,你可以使用全数据库导出或者冷热备份结合的方式来重构

  • oracle drop table(表)数据恢复方法

    复制代码 代码如下: --查看数据库回收站 select object_name,original_name,partition_name,type,ts_name,createtime,droptime from recyclebin; --恢复  FLASHBACK TABLE 表名 TO BEFORE DROP; 此举 可以恢复表结构,同时 数据也恢复了 必须9i或10g以上版本支持,flashback无法恢复全文索引

  • oracle误删数据表还原的二种方法(oracle还原)

    一.如果是刚刚删除,那么有两方法: 首先用show parameter undo;命令查看当时的数据库参数undo_retention设置. 显示如下: 复制代码 代码如下: undo_management   string   AUTO undo_retention  integer 10800 undo_suppress_errors  boolean  FALSE undo_tablespace   string   UNDOTBS1 undo_retention(保持力),10800单位

  • rman恢复方案和oracle异机恢复

    注:①恢复的前提是已经做好备份②完全恢复数据库是数据库遇到故障,在恢复时候没有丢失任何已经提交事物数据的恢复不完全恢复数据库是数据库遇到故障,在恢复时候丢失部分数据的恢复③在linux下需要设置环境变量,即需要恢复的oracle数据库的实例名:export ORACLE_SID=orcl④当用resetlogs启动数据库时,应该要对数据库进行一次全备份 一.恢复方案1.丢失数据文件,进行完全恢复 复制代码 代码如下: RMAN>startup mount;RMAN>restore databa

  • 关于系统重装后Oracle数据库完全恢复的解决办法

    昨日,服务器一磁盘意外故障,c盘数据丢失,重新安装操作系统后,完全还原意外前的数据方法: 完全按照原配置(安装路径.实例名.用户名.密码)重新安装oracle后,将之前留下的oracle文件夹完全拷贝覆盖当前新安装的oracle,启动数据库管理器,数据库完好如初,数据毫发未损,包括之前的job都完全恢复,而且系统代码配置也完全不需要修改,非常省事.

  • oracle下实现恢复一个丢失的数据文件的代码

    如果您目前拥有一个冷备份,但是缺少了其中的一个数据文件,但你目前存在所有的归档,如果您要恢复数据文件,可以参考以下的示例:   复制代码 代码如下: [oracle@jumper eygle]$ sqlplus "/ as sysdba" SQL*Plus: Release 9.2.0.4.0 - Production on Sun Aug 20 01:22:50 2006 Copyright (c) 1982, 2002, Oracle Corporation.  All right

  • Oracle实现分页查询的SQL语法汇总

    本文实例汇总了Oracle实现分页查询的SQL语法,整理给大家供大家参考之用,详情如下: 1.无ORDER BY排序的写法.(效率最高) 经过测试,此方法成本最低,只嵌套一层,速度最快!即使查询的数据量再大,也几乎不受影响,速度依然! sql语句如下: SELECT * FROM (Select ROWNUM AS ROWNO, T.* from k_task T where Flight_date between to_date('20060501', 'yyyymmdd') and to_d

  • oracle如何恢复被覆盖的存储过程

    如果你不小心覆盖了之前的存储过程,那得赶紧闪回,时长越长闪回的可能性越小.原理很简单,存储过程的定义就是数据字典,修改数据字典跟修改普通表的数据没有区别,此时会把修改前的内容放到undo中,我们可以根据这一点来进行闪回,所以我说要尽快,要不然找不回来了.下面我们来做一个实验: 1.在用户TEST下14:31下建立存储过程 复制代码 代码如下: create or replace procedure GG_TEST as l_cnt number; begin for i in 1 .. 1000

  • Oracle 查询表信息获取表字段及字段注释

    获取表字段: select * from user_tab_columns where Table_Name='用户表' order by column_name 获取表注释: select * from user_tab_comments where Table_Name='用户表' order by Table_Name 获取字段注释: select * from user_col_comments where Table_Name='用户表' order by column_name /*

  • oracle中误删除表后恢复语句(FLASHBACK)

    复制代码 代码如下: select * from dba_recyclebin; select * from user_recyclebin; FLASHBACK TABLE CF_IMPORT_RULE TO BEFORE DROP; FLASHBACK COMPLETE

随机推荐