oracle中判断一个字符串是否全部为数字的函数
參考:http://blog.csdn.net/rainnyzhong/archive/2009/01/09/3740660.aspx
作者:Rainny
日期:2009-1-8
创建测试表:
create table test(c_id varchar2(20));
插入测试数据:
insert into test values ('1234');
insert into test values ('45678');
insert into test values ('-1234');
insert into test values ('0.1234');
insert into test values ('-0.1234');
insert into test values ('abc');
insert into test values ('a9c');
insert into test values ('-a9c');
insert into test values ('-.a9c');
insert into test values ('-.');
insert into test values ('-');
insert into test values ('.');
--
使用TRANSLATE函数实现:
select * from test
where length(translate(c_id,'-.0123456789'||c_id,'-.0123456789'))=length(c_id)
and c_id not in ('-','-.','.')
我们来解释一下translate函数。
translate函数和replace函数的功能相似,区别是translate是以字符级进行替换操作,而replace函数则是以字符串级(即整个字符串完全匹配才进行替换)进行替换操作:
SQL> select replace('abcdef','abe','123') from dual;
REPLACE('ABCDEF','ABE','123')
-----------------------------
abcdef
SQL> select translate('abcdef','abe','123') from dual;
TRANSLATE('ABCDEF','ABE','123'
------------------------------
12cd3f
SQL>
Translate函数的语法:
translate(char,from_string,to_string)
----------------------------------------------------------------------------------------------------------------------------------------------------------
参数 说明
----------------------------------------------------------------------------------------------------------------------------------------------------------
char 是需要进行替换的字符串。
from_string
相关文档:
Oracle的锁机制归纳总结
锁是防止在两个事务操作同一个数据源(表或行)时交互破坏数据的一种机制。Oracle采用封锁技术保证并发操作的可串行性。Oracle的锁分为两大
类:数据锁(也称DML锁)和字典锁。字典锁是Oracle
DBMS内部用于对字典表的封锁。字典锁包括语法分析锁和DDL锁,由DBMS在必要 ......
Sql代码
1.
从游标提取数据
2. 从游标失去一起数据运用FETCH下令。每一次提取数据后,游标都指向结果集的下一起。语法如次:
3. FETCH cursor_name INTO variable[,variable,...]
4. 至于SELECT定义的游标的每一列,FETCH变量列表都应该有一个变量与之相对应,变量的部类也要雷同。
例:
5. SET SERVERIUTPUT ......
1. 创建 Sequence
使用如下命令新建sequence(用户需要有CREATE SEQUENCE 或者CREATE ANY SEQUENCE权限):
CREATE SEQUENCE test_sequence
INCREMENT BY 1 -- 每次加的个数据
START WITH 1 -- 从1开始计数
NOMAXVALUE& ......