个人如何接网站建设订单网站内容采编怎么做
个人如何接网站建设订单,网站内容采编怎么做,wordpress图片站模板下载,千峰网络安全培训SQL Server 链接服务器访问 Oracle
离线安装 .NET Framework 3.5 方法一#xff1a;使用 NetFx3.cab 文件 下载 NetFx3.cab 文件#xff0c;并将其放置在 Windows 10 系统盘的 C:Windows 文件夹中。 以管理员身份运行命令提示符#xff0c;输入以下命令并回车#xff1a; …SQL Server 链接服务器访问 Oracle离线安装 .NET Framework 3.5方法一使用 NetFx3.cab 文件下载 NetFx3.cab 文件并将其放置在 Windows 10 系统盘的 C:Windows 文件夹中。以管理员身份运行命令提示符输入以下命令并回车dism /online /Enable-Feature /FeatureName:NetFx3 /Source:%windir% /LimitAccess等待部署进度达到 100%无报错即可。在“程序和功能”-“Windows 功能”中查看确认 .NET Framework 3.5 选项已被勾选。一、测试环境说明操作系统Windows 7 64bit Windows Server 2008 R2 64bit数据库版本SQL Server 2008 R2 64 位 和 Oracle Database 11g 第 2 版 (11.2.0.1.0)及相应的客户端版本Oracle 11g client 64 位。二、创建 SQL Server 链接服务首先 SQL Server 链接 Oracle 可以通过两个访问接口 “ MSDAORA ” 和“OraOLEDB.Oracle”。默认状态下SQL Server 2008 R2 64 位安装后在 服务器对象 - 链接服务器 - 访问接口下并没有 “OraOLEDB.Oracle”接口。注意在安装之前记得关闭杀毒软件例如火绒不然会出现Oracle安装出现CreateFile() error 32 when trying set file time错误第一步安装服务器版本 Oracle Database 11g参考文章第二步安装“OraOLEDB.Oracle”访问接口需要下载 Oracle 11g client 64 位。具体安装过程如下1下载后解压 zip 文件到文件夹点击setup.exe弹出如下界面直接点击完成开始安装客户端程序。3配置注册表打开运行输入 regedit 按回车。找到注册表项 HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSDTCMTxOCIOracleOciLib 值改为 oci.dll、OracleSqlLib 值改为 orasql11.dll、OracleXaLib 值改为 oraclient11.dll。HKEY_LOCAL_MACHINESOFTWAREWow6432NodeMicrosoftMSDTCMTxOCI对它做同样的修改。4配置完成后重新启动计算机继续配置在开始 - 所有程序 - Oracle - OraClient11g_home1 - 配置和移植工具 下找到Net Manager点击打开弹出如下窗口点击服务命名选择 编辑 – 创建 弹出网络服务名向导在网络服务名中输入要连接的 Oracle 实例名。点击下一步默认选择[TCP/IP(Internet 协议)] 点击下一步输入要连接的主机名端口号为 1521 Oracle 的默认端口点击下一步输入服务名点击下一步点击测试中的[测试]按钮进行服务器连接测试 注意要输入正确的用户名和密码 可以直接点击完成跳过测试步骤。注意配置好net manager之后一定要关闭窗口进行保存不然sqlserver链接服务器Oracle的时候会一直链接失败1、 “OraOLEDB.Oracle” 访问接口是由 Oracle 的 Oracle Provider for OLE DB 驱动提供的。它解决了两个数据库类型不一致的问题。而且如果需要使用分布式事务必须使用它来创建链接服务器。在创建之前在 SQL Server 中链接服务器-访问接口-OraOLEDB.Oracle-右键属性选中“允许进程内”。这一步是使我们选择的 OraOLEDB.Oracle 接口打开执行操作。如未设置会报如下错误“无法初始化链接服务器 “null” 的 OLE DB 访问接口 “OraOLEDB.Oracle” 的数据源对象或者使用 Oracle Provider for OLE DB 驱动创建 sqlserver 链接服务器的代码--建立数据库链接服务器 EXEC Sp_addlinkedserver server NORCL,--要创建的链接服务器别名srvproductNOracle,--产品名称providerNOraOLEDB.Oracle,-- OLE DB 驱动名称datasrcNORCL --数据源 Oracle-ora11g-network-admin-tnsnames.ora查看 EXEC Sp_addlinkedsrvlogin ORACLEDB,--已建立的链接服务器名false,-- 固定*/ NULL,--为每个登陆SQL SERVER的用户使用此链接服务器,则写用户名*/ YNMZDXWC,--帐号(Oracle) 1 --密码 EXEC Sp_serveroption ORACLEDB, rpc out, true EXEC Sp_serveroption ORACLEDB, rpc, true --这两个是打开 rpc,rpc out 的默认为 False,打开后可以支持远程更改分布式事务。如有分布式事务操作必须要设置这样我们就建好了链接服务器已经可以通过它对Oracle 数据库进行查询。三、链接服务器的查询查询的两种方式1链接服务器别名…Oracle 名.oracle 表注意使用大写SELECT *FROM OPENQUERY(ZHANG,SELECT *FROM ELE_DEPARTMENT) SELECT * FROM [ORACLEDB]..[SCOTT].[EMP]这种方式可以进行操作优点是使用简单一目了然而缺点是性能太差查询大数据量表很慢。效率太差。2使用 OPENQUERY对给定的链接服务器执行指定的传递查询。该服务器是 OLE DB 数据源。OPENQUERY 可以在查询的 FROM 子句中引用就象它是一个表名。OPENQUERY 也可以作为 INSERT、UPDATE 或 DELETE 语句的目标表进行引用。但这要取决于 OLE DB 访问接口的功能。尽管查询可能返回多个结果集但是 OPENQUERY 只返回第一个。示例A.执行 SELECT 传递查询SELECT * FROM OPENQUERY(ORACLEDB, SELECT * FROM SCOTT.EMP) SELECT * FROM OPENQUERY(ZHANG,SELECT *FROM ELE_DEPARTMENT)B.执行 UPDATE 传递查询UPDATE OPENQUERY (ORACLEDB, SELECT ENAME FROM SCOTT.EMP WHERE EMPNO 7369) SET ENAME SMITH;C.执行 INSERT 传递查询INSERT OPENQUERY (ORACLEDB, SELECT * FROM SCOTT.EMP) VALUES (8888,JIAO,MANAGER,NULL,1990-12-17 00:00:00.0000000,5000.00,5000.00,10);D.执行 DELETE 传递查询DELETE OPENQUERY (ORACLEDB, SELECT ENAME FROM SCOTT.EMP WHERE EMPNO 8888);查询方式速度几乎和在 Oralce 中一样快。并且我们可以将 openquery() 当做表来用。四、SQL Server 链接服务器实现分布式查询启用条件1、 必须安装 Oracle Services for Microsoft Transaction Server2、 必须用Oracle Provider for OLE DB 驱动提供的OraOLEDB.Oracle 访问接口来创建链接服务3、 必须双方启动并配置 MSDTC 服务关于 MSDTC 服务的配置请参考SQLServer 分布式事务配置.doc。示例SET XACT_ABORT ON BEGIN TRAN UPDATE Openquery(ORACLEDB, SELECT * FROM EMP WHERE EMPNO 7369) SET COMM 200 INSERT test_yiyanhua.dbo.EMP SELECT * FROM test_yiyanhua.dbo.EMP WHERE EMPNO 7499 IF ERROR 0 ROLLBACK TRAN ELSE COMMIT TRAN五、彻底卸载Oracle 11g服务端彻底卸载Oracle 11g服务端六、相关Oracle软件安装包下载地址相关Oracle软件安装包下载地址提取码sZZA