据说CodeSmith连Oracle特别麻烦,什么WIN7下不行,64位下不行。之前有个同事为了用上CodeSmith,还特地装了个XP虚拟机。

其实,还是那个连接串的问题。

操作系统64位,就要用64位的驱程。但我们机器上装的是oracle 10g,一个不分64、32位的混蛋,其实就是32位的。反正我们本机出发的连接串,要靠这个32位的oracle客户端来解释。如果服务器的oracle是64位的11g甚至12c,它就没办法解释了。

但是,这个连接串为啥要它来解释?

看看这个连接串,酱紫写的:

DATA SOURCE=PDBGZFBC;PASSWORD=test;PERSIST SECURITY INFO=True;USER ID=123;

DATA SOURCE=PDBGZFBC;啥是PDBGZFBC?噢,它是在我机器上32位的oracle 10g客户端那里定义的:

主要是靠10g客户端来解释这个串。其实我们可以直接写在连接串里,无须经过它解释。所以,酱紫写连接串:

Server=(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.22)(PORT = 1522))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = GZFBC)
)
);PASSWORD=test;PERSIST SECURITY INFO=True;USER ID=123;

codesmith可以连oracle矣。

============================================

原来不全是这样的。64位操作系统仍然需要64位的oracle客户端支持,否则还是不行。

1、首先要有oracle 64位客户端

2、CodeSmith要使用这个64位的客户端

首先说第一点。我都忘了自己是怎么装这个客户端的。似乎是不用安装,直接将这个客户端压缩包解压后放在硬盘上即可。比如:

C:\instantclient-basic-windows.x64-12.1.0.2.0\instantclient_12_1

然后,怎么才能让CodeSmith使用这个客户端?答案是在系统的PATH里加上这个客户端的路径,并且要加在oracle 32位客户端的前面。这样,codesmith找到这个64位的oci.dll以后,就会心满意足地忽略后面那个32位客户端了。比如路径设置如下:

PATH=C:\instantclient-basic-windows.x64-12.1.0.2.0\instantclient_12_1;E:\oracle\product\10.2.0\db_1\bin;

“E:\oracle\product\10.2.0\db_1\bin”就是oracle 10g的安装路径,32位的。

CodeSmith连Oracle的更多相关文章

  1. CodeSmith连接Oracle

    Win7上仅安装了Oracle32位客户端,此时CodeSmith无法连接Oracle数据库. 解决方法一:如果同一台电脑安装了Oracle64位数据库,这样CodeSmith可以连接数据库. 解决方 ...

  2. Test failed.尝试加载Oracle客户端库时引发BadImageFormatException

    CodeSmith6.5不像前几个版本,需要用户手动添加oracle驱动,内部已经集成了oracle的驱动. 网上遇到很多win7 64位机子使用CodeSmith连接oracle的时候出现错误如下:

  3. CodeSmith无法获取Oracle表注释

    如题:安装CodeSmith5.2版本,SQLServer没有任何问题,而Oracle就只能获取列的注释而不能获取表的注释,经过多方面查找资料后找到了一个最重要的解决方案,Sql语句,如下:selec ...

  4. codesmith 在安装32位Oracle 客户端问题解决

    问题解决办法如下: https://blog.csdn.net/csdn1152789046/article/details/52248669

  5. 软件代码生成之Codesmith模板.netTiers

              .netTiers模板到2006年就诞生了, 到今天最后一次更新是12/17/2013, 支持.NET 4.5 and Visual Studio 2012 and 2013. n ...

  6. CodeSmith连接不上MySql数据库的解决办法

    下载地址是http://dev.mysql.com/downloads/mirror.php?id=403020 请先注册登录后才能下载mysql-connector-net-6.3.7.msi这个文 ...

  7. Dapper连接Oracle

    Dapper连接Oracle去年写过了篇博客,名字叫:让dapper支持Oracle 网址:http://www.cnblogs.com/ushou/archive/2012/09/28/270690 ...

  8. 工欲善其事,必先利其器 软件工具开发关键词 protractor自动化测试工具 RegexBuddy正则 CodeSmith,LightSwitch:代码生成 CheatEngine:玩游戏修改内存值必备神器 ApkIDE:Android反编译工具 Reflector:反编译dll动态链接库

    工欲善其事,必先利其器 本文版权归翟士丹(Stan Zhai)和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利. 原文地址:http ...

  9. CodeSmith介绍和常见问题解决方案

    一.CodeSmith介绍 CodeSmith模板代码生成实战详解  https://www.cnblogs.com/knowledgesea/p/5016077.html 二.CodeSmith连接 ...

随机推荐

  1. 【EL&JSTL】学习笔记

    一.EL表达式(形式:${ }) 1. 1 EL运算符 算术运算符: +.-.*./.% 示例 结果 ${1+1} 2 ${1-1} 0 ${1*3} 3 ${3/2} 1.5 ${5%3} 2 关系 ...

  2. hdu1394(Minimum Inversion Number)线段树

    明知道是线段树,却写不出来,搞了半天,戳,没办法,最后还是得去看题解(有待于提高啊啊),想做道题还是难啊. 还是先贴题吧 HDU-1394 Minimum Inversion Number Time ...

  3. python基础003

    1. list 1.1 基础 list是一组有序的集合序列,可以包含任何类型且不必相同,并支持嵌套.采用如下创建方式: li = ["spam",2.0,5,[10,20]] 列表 ...

  4. POJ 3258 River Hopscotch (二分法)

    Description Every year the cows hold an event featuring a peculiar version of hopscotch that involve ...

  5. Python中的*arg和**kwarg

    一个简单的函数 首先我们可以定一个简单的函数, 函数内部只考虑required_arg这一个形参(位置参数) def exmaple(required_arg): print required_arg ...

  6. [luoguP2129] L国的战斗续之多路出击(模拟 || 矩阵)

    传送门 1.模拟 easy #include <cstdio> #define N 500001 int n, m; int X[N], Y[N], x[N], y[N], a = 1, ...

  7. [luoguP1783] 海滩防御(二分 || 最短路 || 最小生成树)

    传送门 因为答案满足单调性,所以看到这个题,第一反应是二分,但是总是WA,也没有超时. 看了题解,,,,,, 这题刚开始很多人会想到二分,二分答案,然后看看是否能绕过所有信号塔,但是,这样写明显超时, ...

  8. openGL加载obj文件+绘制大脑表层+高亮染色

    绘制大脑表层并高亮染色的工作是以openGL加载obj文件为基础的,这里是我们用到的原始程序:只能加载一个obj文件的demo. 然而,一个完整的大脑表层是由很多分区组成的,因此我们的程序需要支持两个 ...

  9. hdu 2669 扩展欧几里得(裸)

    #include<stdio.h> #include<iostream> #define ll __int64 ll gcd(ll a,ll b,ll &x,ll &a ...

  10. X230 安装 EI Capitan 10.11.5 驱动篇

    /* 键盘又换回了 美蓓亚键盘 缩写nmb    虽然比群光软 但是手感真的出色,貌似x宝没有这个代工厂的键盘(全新,非拆机,而且是标准us阵列,背光版) 有人肯定会问,博主这么纠结键盘干嘛?     ...