摘要:
v_count NUMBER(2);SELECT COUNT(*) INTO v_count FROM T_AAA;IF v_count0 THEN RETURN 1;END IF;RETURN 0; 阅读全文
摘要:
PRINT CHARINDEX('a', 'vabc')SELECT INSTR('vabc','a') from dual; 阅读全文
摘要:
create or replace type tb_strSplit as table of varchar2(4000); create or replace function to_table(pv_str varchar2,pv_split varchar2) return tb_strSplit as ltab tb_strSplit := tb_strSplit(); pos integer := 0; ls varchar2(4000) := pv_str;begin pos := instr(ls,pv_split); while pos 0 loop ltab.extend 阅读全文
摘要:
print 0 | 1 | 2 | 4 | 8print 15 & 0print 15 & 1print 15 & 2print 15 & 4print 15 & 8SELECT bitand(15, 8) from dual; 阅读全文
摘要:
本文介绍C#位运算的处理方法,第一步, 先建立一个枚举表示所有的权限管理操作,接下来是权限的运算等。 常用的位运算主要有与(&), 或(|)和非(~), 比如: 1 & 0 = 0, 1 | 0 = 1, ~1 = 0 在设计权限时, 我们可以把权限管理操作转换为C#位运算来处理. 第一步, 先建立一个枚举表示所有的权限管理操作: [Flags] public enum Permissions { Insert = 1, Delete = 2, Update = 4, Query = 8 } [Flags]表示该枚举可以支持C#位运算, 而枚 阅读全文
摘要:
System.Threading.Timer 是一个使用回调方法的计时器,而且由线程池线程服务,简单且对资源要求不高。 只要在使用 Timer,就必须保留对它的引用。对于任何托管对象,如果没有对 Timer 的引用,计时器会被垃圾回收。即使 Timer 仍处在活动状态,也会被回收。当不再需要计时器时,请使用 Dispose 方法释放计时器持有的资源。 使用 TimerCallback 委托指定希望 Timer 执行的方法。计时器委托在构造计时器时指定,并且不能更改。此方法不在创建计时器的线程中执行,而是在系统提供的线程池线程中执行。 创建计时器时,可以指定在第一次执行方法之前等待的时间量 阅读全文