- 博客(18)
- 收藏
- 关注
原创 Oracle中的二进制、八进制、十进制、十六进制相互转换函数
大家经常遇到进制转换的问题,网上搜到的转换只是部分十进制与其它进制的转换,所以我把自己写的转换函数提供给大家,4种进制共12个转换函数,虽然有的转换直接使用to_char()就可以实现,但我还是把它们整理到一起,使用和查找都方便。部分函数需要先创建type_str_agg类型和f_stragg函数才能使用,这两个对象的代码也附在之后。这些函数并非都是我原创,部分是参照别人的代码整理而来:type_
2008-01-02 00:06:00 8961 1
原创 关于在使用rowid和rownum时遇到ORA-01446错误的原因即解决方法。
关于在使用rowid和rownum时遇到ORA-01446错误的原因即解决方法。ORA-01446: cannot select ROWID from view with DISTINCT, GROUP BY, etc. Cause: A SELECT statement attempted to select ROWIDs from a view contai
2007-12-29 17:18:00 8397 2
原创 使用connect by生成时间列表的方法
生成年份列表select 1949 + rownum - 1 as year from dualconnect by 1949 + rownum - 1 order by year desc 生成月份列表select to_char(add_months(to_date(2000-01,yyyy-mm), rownum - 1), yyyymm) as mo
2007-12-28 14:30:00 1752 1
原创 oracle数据库如何改变表空间数据文件的位置
Microsoft Windows 2000 [Version 5.00.2195](C) 版权所有 1985-2000 Microsoft Corp.C:/Documents and Settings/Administrator>sqlplus /nologSQL*Plus: Release 9.2.0.6.0 - Production on 星期三 8月 1 11:42:37 2007
2007-08-01 14:07:00 2192
原创 关于Oracle分页
Connected to Oracle9i Enterprise Edition Release 9.2.0.6.0 Connected as devSQL> SQL> SET timing ON;SQL> CREATE TABLE test_table AS 2 SELECT rownum x 3 FROM dual 4 START WITH rownum =
2006-04-15 16:39:00 1234
原创 在建立视图的别名时绝对不要使用双引号
创建视图中的别名: 在内部,oracle将所有的别名和表名处理为大写。这些列名和表名在数据字典中就是以大写的形式存储的,而且oracle也希望它们是大写。在输入别名建立一个视图时,别名不应该用引号括起来。给别名加双引号会使oracle内部存储的列名变为大小写混合,如果这样做,除非在所有查询中给列名加上双引号,否则执行select时oracle将找不到列名。 在建立视图的别名时
2006-03-11 17:04:00 6554
原创 如何展现字段名和值均以字符串形式保存到第三方表的数据集
今天在CSDN论坛上看到一个网友提的问题,他将字段名和值均以字符串的形式保存在一个表中,这样他的这个表可以扩充无数的纪录,用不同纪录代表的字段来修饰不同的对象,但是他在写查询的时候遇到了难题,就是如何把字符串还原成对应的一个数据集。问题链接请看:http://community.csdn.net/Expert/topic/4595/4595459.xml?temp=.9010736/*
2006-03-07 13:55:00 1530
原创 如何取得一个表的所有字段名用逗号分割
自从 Oracle 9i 开始,就可以通过SYS_CONNECT_BY_PATH 函数实现将从父节点到当前行内容以“path”或者层次元素列表的形式显示出来。取得一个表的所有字段名,用逗号分割。 select max(substr(SYS_CONNECT_BY_PATH(COLUMN_NAME, ,),2)) col from (select COLUMN_NAME,column_id fro
2005-11-12 16:13:00 1849 1
原创 关于Oracle中split函数的实现以及函数递归的举例。
今天看到网友提出了这么一个问题。看下面这张表:指标编号 计算公式 指标值 可分解标志 A (B+C)+E ? 1 B 10 0 C D+E ? 1 D 30 0 E
2005-11-12 05:18:00 3983
原创 B-树索引与位图索引
/*刚从书上看到了位图索引,自己经过了测试,于是现学现卖,希望对还不了解的人有所帮助*/ B-树索引在Oracle中是一个通用的索引,在创建索引时它就是默认的索引类型。最多可以包括32列。 位图索引Oracle为每个唯一键创建一个位图,然后把与键值所关联的ROWID保存为位图。最多可以包括30列。 一般情况下,大多数用户都只创建TYPE为NORMAL的B-树索引,所以对于较低基数的列我们都是不创建
2005-09-16 16:10:00 6717
原创 Oracle自定义函数——f_henry_GetStringLength
本人当写完这个函数后才知道已经有lengthb()这个现成的函数,无赖对Oracle认识的还是太浅薄,汗自己一个!Oracle下的Length()函数不能区分中英文,只能得到字符数而不能得到字节数,很多时候插入string到字段中时总要先进行一次检查,防止string长度超过了字段定义的长度,一般大家都是把这个检测放到应用程序中执行,用我写的这个小函数就可以实现在数据库服务器端对要插入的字段进
2005-08-10 20:38:00 1437 3
原创 ASP.NET和Oracle连接问题的解决方法——Unable to load DLL (oci.dll)
不少人在做ASP.NET+Oracle开发的时候都会碰到连接问题,提示“Unable to load DLL (oci.dll)”,但这个文件在系统中是存在的,很多人为此焦头烂额,我看到很多的帖子都是求助这个问题的。其实并非所有的人都会碰到这个问题,只在于用硬盘分区格式为NTFS的用户,既然oci.dll文件时存在的,那么访问不到就自然是权限的问题了,解决方法如下:例如你的Oracle是装在C盘中
2005-08-09 19:02:00 6862 2
原创 Oracle自定义函数——f_henry_ConcatRowsByColumn
Create Table henry_test (a varchar2(10),b int);Insert Into henry_test values (aa,1);Insert Into henry_test values (bb,1);Insert Into henry_test values (cc,1);Insert Into henry_test values (dd,
2005-07-06 11:06:00 1993 2
原创 SQLServer自定义函数——fnSumOfTwoTime
/*************************************************************** File: fnSumOfTwoTime.sql** Name: fnSumOfTwoTime** Description: 把两个以“小时:分钟:秒钟”的时间相加求和 输入参数必须以24小时格式来表示且不能为“24:00:00”** Return values: v
2005-04-06 11:49:00 1285
原创 SQLServer自定义函数——fnSplit
/*************************************************************** File: fnSplit.sql** Name: fnSplit** Description: Split the string. 分割字符串** Return values: @temp ** Parameters: @sql,@splits** Author:
2005-04-06 11:47:00 1619
原创 SQLServer自定义函数——fnDateInterval
/*************************************************************** File: fnDateInterval.sql** Name: fnDateInterval** Description: Get the interval between the start date and the end date. Use the forma
2005-04-06 11:41:00 1123
原创 SQLServer自定义函数——fnCompare
/*************************************************************** File: fnCompare.sql** Name: fnCompare** Description: Compare two strings,return the alike degree with the percentage. 比较两个字符串,返回相似度的百分
2005-04-06 11:37:00 1381
原创 我的第一个触发器练习
表ExA如下:CREATE TABLE ExA ( id int IDENTITY (1, 1) NOT NULL , status bit NULL , primary key (id)) select * from ExAid status ----------- ------ 4 16 1 表ExB如下:CREATE TABL
2005-03-04 13:53:00 989
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人