SQLServer访问Oracle(通过同义词-视图-数据字典)出现的问题
近日,调整客户供应链系统(基于SQL Server库展现网页页面,数据通过SQLServer链接服务器取Oracle库)数据同步的问题过程中,发现如下所述的奇怪现象.特记录如下:Oracle,A B两用户A用户 有 TBLA1,TBLA2,TBLA3 三个以TBL开头的表B用户 有 TBLB1,TBLB2 两个以TBL开头的表A用户下,建视图 v_tblname 如下:CREATE OR REPL...
用Oracle的NLSSORT获取拼音首字母
用Oracle的NLSSORT获取拼音首字母最近,某系统上线,需要将基础资料初始导入进系统,其中有客户名称一列对应着客户助记符一列,助记符是由客户名称取各个汉字拼音首字母而得来的.所以,需要获取汉字字符串的拼音首字母.此前,接触过汉字编码(国标区位码)的一些知识:国标区位码表(GB2312-80),共设置94个区,每个区94个...
错误提示"ORA-01722: 无效数字"一例
遇到用户反馈过来的一例错误提示: select dutycode,rpttype,rptid from vRptDuty where RptId=7 ; 这个语句提示 ORA-01722: 无效数字如果不加条件select dutycode,rpttype,rptid from vRptDuty ;则语句顺利执行.看vRptDuty是一个视图,其定义如下:create or replace view vrptduty asSelect a.RptType, a.Rp...
两个exists子句,使用同表同字段作判断的异常现象
数据库:11.2.0.1 64bit for Windows环境Select OrgCode, YsOrgCode From (Select A.OrgCode, A.YsOrgCode, A.PluID, A.SupCode, C.CntID From (Select OrgCode, YsOrgCode, PluID, SupCode &...
四舍五入之银行家算法
对于“四舍五入”的概念,相信大家都熟悉,因为小学三四年级就已经接触过了,常规算法这儿从略。但对于银行家算法,也许有不少人比较生疏。此前,曾经听说过银行家算法,也知道算法“四舍六入五取偶”的具体实现方法,那就是:(假设对小数部分进行舍入的话),待舍入的部分恰好为0.5000,则需要看前面一位数的奇偶性,...
Oracle11g的SQL支持代码中全角字符代替半角字符
最近,公司开发部门数据库迁移到新服务器上面,数据库原来使用Oracle10g,新服务器上面装的是Oracle11g,具体版本11.2.0.1结果,开发同事不经意间发现,SQL语句中使用全角的括号竟然语法检查也是可以通过的.比如:select (col_Total1+col_Total2) from t_Test where rownum<10;select (col_Total1+col_Total2) from t_Test...
主键对应的约束名称
如果使用alter table tbl_1 add primary key (col_1);这样创建的主键,其一对应的主键名/索引名不容易知道(是系统产生的名字: SYS_C0010004 类似这样),其二索引和表放在一个表空间里面,对性能不利. 使用ALTER TABLE tbl_1 ADD CONSTRAINT pk_tbl_1 PRIMARY KEY (col_1) USING INDEX TABLESPACE t...