一切源于要命的接口,上下传总是出现问题,单据下传不了,于是我说弄个监控查询的界面吧,保军哥说好吧,那么就开始了和DATALINK的纠缠。
第一次试验~
傻傻的我,晚上默默的改DATALINK,弱弱的以为和oracle的datalink一样,折腾一晚上才想起,是不是要装sql客户端啊???
保军哥说,数据处理完了,该走了。好吧,转钟了。。。回家睡觉了。
第二次的透明网关
要装sql客户端吗???要装sql客户端吗!!!不想装sql客户端啊啊啊啊啊~~
漆黑黑的夜里,默默的百度,忽然发现透明网关这个东东~~
Soga!!!!
立马把自个的小本本装了按照网上的步骤设置。。。。
1. 安装oracle 的transparentgateway 透明网关。
安装Oracle选择自定义安装,然后再选择安装透明网关,再进去选择安装FOR SQLServer的组件。安装完后,注意在oracle 安装目录下多了一个目录C:\oracle\ora92\tg4msql\
2. 找到C:\oracle\ora92\tg4msql\admin目录下的inittg4msql.ora文件,修改如下
HS_FDS_CONNECT_INFO=[192.168.1.123].ERP_WMS
#默认安装时是[192.168.1.123]/ERP_WMS 需要把“/”改成“.”,切记切记
HS_FDS_TRACE_LEVEL=OFF
HS_FDS_RECOVERY_ACCOUNT=RECOVER
HS_FDS_RECOVERY_PWD=RECOVER
说明 可以通过Oracle工具中的Migration WorkBench 进行配置。(过程中需要配置ODBC,这部分没做过不知道,我是复制粘贴大法!!)
3. 建立监听,修改C:\oracle\ora92\network\admin目录下的listener.ora文件,
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = C:\oracle\ora92)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = ORA9)
(ORACLE_HOME = C:\oracle\ora92)
(SID_NAME = ORA9)
)
#红色部分是增加进去的(PROGRAM = tg4msql) 传说中应该和inittg4msql.ora,蓝色部分一致!!!
(SID_DESC =
(GLOBAL_DBNAME = tg4msql)
(SID_NAME =upzone)
(ORACLE_HOME = C:\oracle\ora92)
(PROGRAM = tg4msql)
)
)
4. 修改TNS(tnsnames.ora)
#红色部分是增加进去的(SID = upzone)传说中应该和listener.ora文件的SID_NAME一致!!!端口依旧要继承1521
upzone =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =BizTalk2006)(PORT = 1521))
)
(CONNECT_DATA =
(SID = upzone)
)
(HS = OK)
)
5. 重启监听服务,一定要启动哦~~~!
OracleListener
6.创建DBLink
createpublic database link UPZONE.US.ORACLE.COM
connect to SA identified byupzone --User Id & Password for MS-SQL
using 'upzone';
select * from [email protected];
此时会报错,下面分解>>>>>>>>>>>>>>>>>>>>>>>>>>
第三次sql的新建用户啊~!
这个坑爹的报错,郁闷了我一整天。各种度娘………….总体答案就是说密码有问题,有人说,sql的密码要大写,查询ora-02063 ORA-02063:紧接着(源于);完全不明白啥意思~~
还有人说,sql数据库的密码必须大写,不然连不上,这是啥毛病啊??微软如此坑人?
反复比较,配置错啦?~眼睛斗斗看花了,不是啊~啥情况?
琢磨着是不是要做SqlServer数据权限?网上还有说,读取sql数据库的时候sql默认是master数据库,弄个master的表查下数据 ,哈~还真是!想着在sql数据库上建立一个新用户。默认数据库设成接口库,成了~哦耶!
第四次的同义词
关联oracle表查数据又遇到问题了,select * 能有数据,指定字段时候就不行,奇怪~
又是度娘,如果度娘能给力,天天查度娘还真不错,她说字段要加引号,于是我加了“”””双引号,又成了。很开心的扔到程序里,各种报错,内心又跌到谷底。保军说加个同义词试试呗,保军发话了,那就加呗。
不说了,直接上图吧
语句
--Create the synonym
createorreplacesynonym SYN_DJ
forDJ@HFERP;
整完了,还是要Select "djbh" FROM syn_dj sjc,这不是坑我么,好吧我还是用视图吧!
第五次,还是用视图吧~~
不说了,直接语句吧:
createorreplaceview viw_dj_bak as
Select "djbh" djbh,
Trim("dwbh") dwbh,
"ZT" ZT ,"sf_gxht" sf_gxht,
"dckhcbj" dckhcbj,
"jsje" jsje,
"sf_rgsqph" sf_rgsqph
FROM DJ_bak@hferp;
这样我查询的时候就可以直接用字段了,很方便的说。