网站导航网学 原创论文 原创专题 网站设计 最新系统 原创论文 论文降重 发表论文 论文发表 UI设计定制 论文答辩PPT格式排版 期刊发表 论文专题
返回网学首页
网学原创论文
最新论文 推荐专题 热门论文 论文专题
当前位置: 网学 > 交易代码 > SQL语法 > 正文

SQL连接Oracle方法

论文降重修改服务、格式排版等 获取论文 论文降重及排版 论文发表 相关服务

【网学网提醒】:网学会员,鉴于大家对SQL连接Oracle方法十分关注,会员在此为大家搜集整理了“SQL连接Oracle方法”一文,供大家参考学习!


    USE[master]
    GO
    EXEC--添加服务
    master.dbo.sp_addlinkedserver--命令名称
    @server=N'TEST',--参数1,连接oracle的数据源名称
    @srvproduct=N'ORACLE',--参数2,连接的数据源的产品名称
    @provider=N'MSDAORA',--参数3,访问的接口方式
    @datasrc=N'ERPORA'--参数4,被访问的数据源名称
    GO
    EXEC--添加用户
    master.dbo.sp_addlinkedsrvlogin--命令名称
    @rmtsrvname=N'TEST',--数据源名称
    @locallogin=NULL,--本地登陆
    @useself=N'False',--指定用用户名和密码登陆
    @rmtuser=N'SCOTT',--用户名称
    @rmtpassword=N'a123456'--用户密码
    go
    select*fromTEST..ERP.BAS_DEPT--测试结果
    USE[master]
    GO
    EXEC--从本地SQLServer实例中的已知远程服务器和链接服务器的列表中删除服务器。
    master.dbo.sp_dropserver
    @server=N'TEST',
    @droplogins='droplogins'
    GO
    前提条件
    1)在SQL_SERVER2005服务器上安装Oracle9i的客户端。
    假设安装到D:\99.88.66.software\02.oracle目录。
    注意需将ORACLE安装后的目录设为Everyone权限。
    2)配置D:\99.88.66.software\02.oracle\02.Ora92I\network\admin\tnsnames.ora文件。
    配置示例
    HAODAIFU=
    (DESCRIPTION=
    (ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.8.119)(PORT=1521)))
    (CONNECT_DATA=(SERVICE_NAME=haodaifu))
    )
    3)在DOS模式下运行以下命令以便确认ORACLE客户端安装无误。
    a:sqlplusscott/a123456@haodaifu
    b:tnspinghaodaifu
    C:\DocumentsandSettings\Administrator>tnspinghaodaifu
    TNSPingUtilityfor32-bitWindows:Version11.1.0.6.0-Productionon13-12月-200704:36:15
    Copyright(c)1997,2007,Oracle.Allrightsreserved.
    已使用的参数文件:
    D:\99.88.66.software\02.oracle\DB11G\11G\network\admin\sqlnet.ora
    已使用TNSNAMES适配器来解析别名
    Attemptingtocontact(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)
    (HOST=192.168.8.122)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=haodaifu))
    )
    OK(10毫秒)
    4)打开控制面板-服务,确认DistributedTransactionCoordinator服务已经启动。
    5)修改注册表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC\MTxOCI
    OracleOciLib=oci.dll
    OracleSqlLib=orasql9.dll
    OracleXaLib=oraclient9.dll
    6)重启SQL_SERVER服务器
    7)图形创建链接服务器方法--〉
    A)打开SQLSERVERManagementStudio,新建链接服务器。
    B)链接服务器:写上链接服务器的名字,如:test
    C)访问接口:选择MicrosoftOLEDBProviderforOracle
    D)产品名称:写上Oracle
    E)数据源:写上tnsnames.ora文件中配置的服务名,如:haodaifu
    F)访问接口字符串:userid=用户名;password=口令(可以省略)
    G)选择安全性选项页,使用此安装上下文建立连接:
    a.远程登录:scott
    b.使用密码:a
    123456
    H)确定
    8)SQL的写法有两种
    a)使用T-SQL语法:
    SELECT*FROMLNK1..用户名.表名--注意用户名称,表名称要大写
    b)使用PLSQL语法:
    select*fromopenquery(LNK1,'select*from用户名.表名')
    第二种访问方式比第一种约快50%;第二种访问方式跟直连ORACLE的速度相当;
    第一种访问方式可能会导致一些意外错误,如:该表不存在,或者当前用户没有访问该表的权限。
    如果需要访问的column中使用没有精度的数据类型,这两种查询方式都可能会报错,这是ORACLE的BUG,
    无法修正,只能通过查询语句的特殊处理规避这一问题:
    OLEDB提供程序'OraOLEDB.Oracle'为列提供的元数据不一致。执行时更改了元数据信息。
    1、对远程表执行UPDATE、INSERT,或DELETET示列
    updateopenquery(linked1,'selectssnfromtestlinkedwheressn=2')
    setssn=ssn+1
    insertopenquery(linked1,'selectssnfromtestlinkedwhere1=0')values(1000)
    deleteopenquery(linked1,'selectssnfromtestlinkedwheressn>100')
    
  • 上一篇资讯: SQL连接语法
  • 下一篇资讯: SQL跟踪分析资料
  • 设为首页 | 加入收藏 | 网学首页 | 原创论文 | 计算机原创
    版权所有 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2020 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号 常年法律顾问:王律师