Chinaunix首页 | 论坛 | 博客
  • 博客访问: 10168288
  • 博文数量: 1669
  • 博客积分: 16831
  • 博客等级: 上将
  • 技术积分: 12594
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-25 07:23
个人简介

柔中带刚,刚中带柔,淫荡中富含柔和,刚猛中荡漾风骚,无坚不摧,无孔不入!

文章分类

全部博文(1669)

文章存档

2023年(4)

2022年(1)

2021年(10)

2020年(24)

2019年(4)

2018年(19)

2017年(66)

2016年(60)

2015年(49)

2014年(201)

2013年(221)

2012年(638)

2011年(372)

分类: Oracle

2017-01-13 10:30:50

SQL Server 2008连接Oracle操作步骤详细记录

 18963人阅读 评论(1)  举报
 分类:
SQL Server(26) 
SQL Server Management Studio Express(简写SSMS)
SQL Server配置管理器:SQL Server Configuration Manager(简写SSCM)
一、 开启SQL Server 2008远程连接---如果已经开启,则可以跳过
1. 打开SSMS,用Windows身份连接数据库后,右键点击数据库引擎,选择“属性”
2. 左侧选择“安全性”,选中右侧的“SQL Server和Windows身份验证模式”以启用混合登录模式
3. 左侧选择“连接”,勾选“允许远程连接此服务器”,然后点“确定”
4. 打开SSCM,选中左侧的“SQL Server服务”,确保右侧的“SQL Server”以及“SQL Server Browser”正在运行
5. 选中左侧“SQL Server网络配置”下的“MSSQLSERVER的协议”,右侧的TCP/IP默认是“Disabled”,双击或右键点击选“属性”,在“协议”选项卡中将其修改为“Enabled”,在“IP Address”选项卡,设置端口“1433”
6. 选中左侧“SQL Native Client 10.0配置”下的“客户端协议”,将“TCP/IP”也修改为“Enabled”

7. 重新启动SQL Server 2008

8. 此时应该可以使用了,但还是要确认一下防火墙。将SQLServr.exe(C:\Program Files\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\Binn\sqlservr.exe)添加到允许的列表中
二、 安装Oracle客户端软件
可以去Oracle官网下载,比如“10201_client_win32”
安装成功后,在Oracle客户端安装目录下的/network/admin/tnsnames.ora配置所要连接的服务器的相关信息,比如:
TEST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.11.90)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
如果admin目录下没有“tnsnames.ora”,新建一个文本文件,改名为“tnsnames.ora”
三、 添加Windows的ODBC数据源
1. 开始->管理工具->数据源(ODBC)


有些“开始”菜单中没有放“管理工具”连接,则可以先到“控制面板”中,然后选择“性能和维护”,就可以找到“管理工具”了
2. 在“用户DSN”选项卡或者“系统DSN”选项卡下,点击“添加”,选择“Microsoft ODBC for Oracle”后点击“完成”


3. 填写相关信息


数据源名称、服务器名称与“tnsnames.ora”中配置的一样,其他两项可以忽略
填好后,点击“确定”
四、 在SSMS中创建链接服务器
1. 在SSMS中,展开已经连接上的某引擎,依次选择服务器对象->链接服务器,在“链接服务器”上点右键,选择“新建链接服务器”


2. 在“常规”选项卡上按照如下填写:


“链接服务器”,随便取个名字
“访问接口”和“产品名称”如上图所示,不要做任何改变,包括大小写
“数据源”与“tnsnames.ora”中配置的一样,也即与“添加Windows的ODBC数据源”步骤中填写的一样
“访问接口字符串”,按照图上的格式来填写,或者“ID=username;Password=userpasswd”也行,这里的username和userpasswd为登录所要连接的Oracle数据库所使用的用户名和密码;这里一定要填写,虽然在“安全性”选项卡中也会填写
3. 切换到“安全性”选项卡,做如下配置


填写用户名和密码,与上一步所填的用户名和密码一致
点击“确定”,完成
4. 查看Oracle中的数据
此时,在“链接服务器”下面,会出现刚刚创建的链接服务器,展开,可以看到所有的表和视图,但是只能看到表名,不能查看字段
要查询可以右键点击某表,选择:编写脚本为->Select 到->新查询编辑器窗口



SQL的写法有两种

a) 使用T-SQL语法:

       SELECT * FROM test..username.表名  

      注意:在这种方式下取数,如果在oracle中声明表的时候表明用了引号,此处的表明必须和oracle中一致,否则全部使用大写,不然会提示找不到表。(此处浪费时间若干。。。)

b) 使用PLSQL语法:
  SELECT * FROM openquery(test,'SELECT * FROM test.username.表名')

         c)第二种访问方式比第一种约快50%;第二种访问方式跟直连ORACLE的速度相当;     

        d)如果需要访问的column中使用没有精度的数据类型,这两种查询方式都可能会报错,这是ORACLEBUG,无法修正,只能通过查询语句的特殊处理规避这一问题:
       e)在sql server 中有 'msdaora' 和'OraOLEDB.Oracle' 访问接口,右键属性更改下访问接口选项,将“仅零级”前面的√去掉。


阅读(1898) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~