摘要:
2012-05-22char varchar 参数错乱导致存储过程报错,特此记录:1.ora-01840:输入值对于日期格式不够长 to_char(to_date(‘2012’, 'yyyy-mm-dd'), 'yyyyMMdd');2.ora-06502:pl/sql:数字或值错误:字符串缓冲区太小 v_datex_end char(8) := ‘2012-05-21’|| '1231';报销--存储过程参数对照 来自:http://winie.javaeye.com/blog/540340这篇对oracle几种字符类型总结的比较好,收藏了。一 阅读全文
摘要:
记得刚刚毕业的时候,自己连断点也不会打,当时还在用JCreate,就连毕业设计也是用 System.out找 Bug的,想想真的很笨。开始工作后,一个星期过去了,在一个 1、 2百万行的系统中找 Bug,我依然在用 System.out,当时最痛苦的就是修改代码,每次找到疑似 Bug,就输出一下,然后重启(那时也不知道代码热替换),直到有一天带我的导师发现了这样笨笨的调试 Bug,才让我第一次认识了断点,也知道了代码修改完了可以进行热替换,我这个中国教育的半牺牲品才算向美好生活迈进了一小步。 1、条件断点断点大家都比较熟悉,在EclipseJava编辑区的行头双击就会得到一个断点,代码会运行到 阅读全文
摘要:
Oracle不使用b*tree索引的情况大致如下1:where条件中和null比较可能导致不使用索引2:count,sum,ave,max,min等聚集操作时可能导致不使用索引3:显示或者隐式的函数转换导致不使用索引4:在cbo模式下,统计信息过于陈旧导致不使用索引5:组合索引中没有使用前导列导致没有使用索引6:访问的数据量超过一定的比例导致不使用索引下面就其中的几点做一些说明一:Null可以使用索引吗一般情况下,where条件中和null比较将会导致full table scan,实际上,如果table中索引建列的值都为null,那么该行在索引(此处指b*tree,位图索引和聚簇索引可以有空 阅读全文
摘要:
(PS:这篇文章为转载,我不喜欢转载的但我觉得这篇文章实在是超赞了,就转了过来,这篇可以说是学习JAVA正则表达的必读篇。作者是个正真有功力的人,阅读愉快) 在Sun的Java JDK 1.40版本中,Java自带了支持正则表达式的包,本文就抛砖引玉地介绍了如何使用java.util.regex包。 可粗略估计一下,除了偶尔用Linux的外,其他Linu x用户都会遇到正则表达式。正则表达式是个极端强大工具,而且在字符串模式-匹配和字符串模式-替换方面富有弹性。在Unix世界里,正则表达式几乎没有什么限制,可肯定的是,它应用非常之广泛。 正则表达式的引擎已被许多普通的Unix工具所实现,... 阅读全文
摘要:
泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。 Java语言引入泛型的好处是安全简单。 在Java SE 1.5之前,没有泛型的情况的下,通过对类型Object的引用来实现参数的“任意化”,“任意化”带来的缺点是要做显式的强制类型转换,而这种转换是要求开发者对实际参数类型可以预知的情况下进行的。对于强制类型转换错误的情况,编译器可能不提示错误,在运行的时候才出现异常,这是一个安全隐患。 泛型的好处是在编译的时候检查类型安全,并且所有的强制转换都是自动和... 阅读全文
摘要:
一、ORACLE中,表空间是数据管理的基本方法,所有用户的对象要存放在表空间中,也就是用户有空间的使用权,才能创建用户对象.否则是不充许创建对象,因为就是想创建对象,如表,索引等,也没有地方存放,Oracle会提示:没有存储配额. 因此,在创建对象之前,首先要分配存储空间. 分配存储,就要创建表空间: 创建表空间示例如下:CREATE TABLESPACE "SAMPLE" LOGGING DATAFILE 'D:\ORACLE\ORADATA\ORA92\LUNTAN.ora' SIZE5MEXTENT MANAGEMENT LOCAL SEGMENT S 阅读全文
摘要:
一、oracle数据库导入导出命令! Oracle数据导入导出imp/exp 在cmd下(安装oracle后已经配置好环境变量,可用该命令imp、exp)功能:Oracle数据导入导出imp/exp就相当与oracle数据还原与备份。大多情况都可以用Oracle数据导入导出完成数据的备份和还原(不会造成数据的丢失)。Oracle有个好处,虽然你的电脑不是服务器,但是你装了oracle客户端,并建立了连接(通过Net Configuration Assistant添加正确的服务命名,其实你可以想成是客户端与服务器端 修了条路,然后数据就可以被拉过来了)这样你可以把数据导出到本地,虽然可能服务器离 阅读全文
摘要:
Oracle触发器语法(一)一 Oracle触发器语法触发器是特定事件出现的时候,自动执行的代码块。类似于存储过程,触发器与存储过程的区别在于:存储过程是由用户或应用程序显式调用的,而触发器是不能被直接调用的。功能:1、 允许/限制对表的修改2、 自动生成派生列,比如自增字段3、 强制数据一致性4、 提供审计和日志记录5、 防止无效的事务处理6、 启用复杂的业务逻辑触发器触发时间有两种:after和before。1、触发器的语法:CREATE [OR REPLACE] TIGGER触发器名 触发时间 触发事件ON表名[FOR EACH ROW]BEGINpl/sql语句END其中:触发器名:触 阅读全文
摘要:
【案例一】题目:--触发器:--添加员工信息,流水号作为自动编号(通过序列生成),--并且判断如果工资小于0,则改为0;如果大于10000,则改为10000。CREATE TABLE emp2(e_id NUMBER,e_no NUMBER,e_name VARCHAR2(20),e_sal NUMBER)SELECT * FROM emp2;CREATE SEQUENCE seq_trg_id;INSERT INTO emp2(e_id,e_no,e_name,e_sal) VALUES(seq_trg_id.nextval,7788,'章子',1000000000000)I 阅读全文
摘要:
1:uuid.hex: 采用128位的算法来生成一个32位字符串。最通用的一种方式。适用于所有数据库 。在*.hbm.xml中按如下设置。 <id name="id" unsaved-value="null"> <generator class="uuid.hex"/> </id> 2:指定参数的情况 <id name="id" unsaved-value="0"> <generator class="sequence"& 阅读全文