built-in or packaged function
dbms_outputdbms_utility.format_error_backstracedbms_utility.format_call_stack[@more@]
关于over()
今天发现了一个oralce的好东西,over函数,它跟在聚合函数的后面,可以指定聚合函数的范围,顺序。有了这个函数,相当于是只做汇总,而不做记录的合并。既保持记录的条数不变,而给出总数。很好,很好基础数据是HASH_KEY_COLUMNDATA2009-5-10 14:11afsdfa2009-5-11 14:11fdasfa2009-5-13 14:11afsdfa2009-5-12 14:11fdasfaSELECT SUM(LENGTH(data))OVER(PARTITION BY data) FROM hash_exampleGROUP BY data这条语句的返回值是2个6因为是先执行group by将4条记录变为2条,然后才执行的overSELECT SUM(LENGTH(data))OVER(PARTITION BY data)
10gCR-Chapter 26 External table
You can use the external table feature to access external files as if they were tables inside the database. When you create an external table, you define its structure and location within Oracle. When you query the table, Oracle reads the external table and returns the results just as if the data had been stored within the database. But because the data is outside the database, you do not have to be concerned about the process for loading it into the database—a potentially significant benefit f
今天第一次使用了oracle 9i下的flashback
一次误操作,把数据更新没了。运用exec dbms_flashback.enable_at_time('2002-12-10 10:00:00');参数可以为to_date()函数。运行以后相关会话,处在flashback状态下,不能执行DML和DDL语句了因此最后还是将原始数据以文本形式导出,在用sqlldr导入才使得数据得以顺利恢复。貌似很麻烦,不知是我的问题,还是oracle的问题。有待仔细研究。 [@more@]
关于ORACLE中CREATE VIEW 的时候用ORDER BY 和 WITH READ ONLY 的问题
今天建立视图时遇到如下问题。按照如下方式建立报ora-00933错误:CREATE OR REPLACE VIEW AREA_TOWN AS SELECT a.area_name,a.cuid FROM AREA a ORDER BY a.area_nameWITH READ ONLY;经过几次测试发现只要ORDER BY 和WITH READ ONLY同时出现就会报这个错。于是乎,有了很多怪异的想法,什么ORDER BY的生成方式和READ ONLY 属性相抵触等。后来经过别人指点,发现只需调整一下SQL的写法即可。如下:CREATE OR REPLACE VIEW AREA_TOWN AS SELECT area_name,cuid FROM (SELECT a.area_name,a.cuid FROM AREA a ORDER BY a.area_name)WITH READ O
Oracle 基本类型占用空间计算
一直想可以准确的估算一下一条记录占用的空间大小。由于各种原因没有如愿。最近又遇到了相同的问题,简单整理如下。NUMBER 类型 正整数 0需要1个Byte,1~99 以内需要2个Byte,然后没增加2位多需要一个Byte。如123和1234同样需要占用3个Byte.负整数 比正整数多一个表示负号的Byte.小数 和整数一样,只是整数部分和小数部分是记录的。如:1.1则需要占用3个Byte。而1或11只要占用2个Byte,12.34也需要占用3个Byte。DATE类型需要7个Byte。CHAR,VARCHAR2类型由LENGTHB获得的实际长度决定。注意LENGTH函数给出的是字符的长度,而不是Byte长度。编