通过sql server 2008正版访问Oracle
我们大多数人都知道sql server 2008正版,却很少有人遇到用其访问Oracle的情况。今天小编就来给大家说道一下。
在这之前,我们要做好准备工作。事先在需要访问Oracle 数据库的主机上完成以下工作:
1. 安装SQL Server 数据库:SQL Server 2008 R2 Express
2. 安装Oracle 客户端访问程序:Oracle 10g Client
3. 配置Oracle 客户端tnsnames.ora 文件,其中需要注意文件中的数据库别名“ORADB”,该名称在下文创建Linked Server 时将会使用到。
ORADB = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = HOSTIP)(PORT = 1521)) (CONNECT_DATA = (SID = DBNAME))
4. 确保主机可以通过SQLPlus 访问远程Oracle 数据库。
sqlplus 创建Linked Server,打开SQL Server Management Studio 进入Server Objects 列表,右键Linked Servers,点击“New Linked Server...”
在General 界面中填写下面几项内容:
Linked server: 填写Linked Server 名称
Provider:选择Microsoft OLE DB Provider for Oracle
Product name:填写Oracle
Data source:填写上面提到的数据库别名ORADB
点击Security ,点选“Be made using this security context”,假设Oracle 数据库有一个名称为admin 的用户ID,在“Remote login”中输入访问帐号,点击“OK”结束创建。
完成后Linked Servers 中会看到刚创建的Oracle 数据库链接。
访问Oracle,接下来就可以在SQL Server 端访问Oracle 数据库了,查询语法如下:
SELECT * FROM LINKED_NAME..ACCOUNT_NAME.TABLE_NAME;
结合上面的实例,假如要查询admin 用户下jobs 表的内容,则相应SQL 语句应为:
SELECT * FROM ORASVR..ADMIN.JOBS;
使用上述方法进行数据查询时,若Oracle 表有NUMBER 列时会出现转化错误,这时可以将NUMBER 类型转化为字符串(也有将该列属性修改成NUMBER(10),为NUMBER 列设定好位数)。考虑到View 查询等因素个人感觉还是转为字符串的方式较为通用。
以上就是通过sql server 2008正版访问Oracle的详细步骤,希望能够帮助到大家。
想要了解更多,请关注下方平台>>
新浪微博:@享和邑正版软件商城
公众微信:享和邑
下一篇:手把手教你为SQL数据库备份
热门推荐: