作者DeepSix (Free Myself?!)
看板C_Sharp
标题Re: [问题] C#.net ODBC连线问题
时间Sat Mar 17 11:12:08 2012
你要连结Oracle,不知道为什麽一定要用ODBC连?有特殊原因吗?
之前因为用express版不能用第三方所以才必须用ODBC连MySql。
参考资料如下:
http://mi.hosp.ncku.edu.tw/km/index.php/dotnet/44-adonet/51-adonet-
※ 引述《kouun (big_cat)》之铭言:
: 出现的问题是 :
: ERROR [NA000] [Microsoft][ODBC driver for Oracle][Oracle]ORA-12504: TNS:未提供
: 监听器 CONNECT_DATA 中的 SERVICE_NAME
: ERROR [IM006] [Microsoft][ODBC 驱动程式管理员] 驱动程式的 SQLSetConnectAttr 失
: 败
: ERROR [01000] [Microsoft][ODBC 驱动程式管理员] 驱动程式不支援这应用程式请求的
: 此版 ODBC 行为。(请参阅 SQLSetEnvAttr)。
: string conn_str = "Driver={Microsoft ODBC for
: Oracle};Server=IP;UID=??;PWD=??;";
: OdbcConnection cn = new OdbcConnection(conn_str);
: cn.Open(); <-- 错误在这行
: 我用内建元件的方式连ODBC是OK的,自己写连线会错误这是哪边有问题
: 变数设置...等 我确认过好几次因该是没问题
: 求求大大帮我赶紧解答吧! 这问题卡一阵子了
: 网路资料和去图书馆找书翻到真的无解才上来求救的
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 123.205.22.148
1F:→ kouun:我学生,从老师分配给我的工作,厂商规定用ODBC连Oracle 03/17 12:29
2F:→ kouun:原本是用内建写的就OK,因为要上传图片,要转二进制 03/17 12:30
3F:→ kouun:内建的元件 InsterParameters 不支援 二进制 03/17 12:31
4F:→ kouun:如果是自己写连线方式 .Parameter 可以用 二进制 03/17 12:32
5F:→ rularula:你要连线的电脑有装Oracle Client吗? 03/17 16:25
6F:→ rularula:我有用过ODBC连结Oracle的经验,但不像你这样的设定法 03/17 16:26
7F:→ rularula:先是安装Oracle client,再进Net Manager设定连线服务 03/17 16:33
8F:→ rularula:将ODBC设定的驱动程式设定为Oracle client的驱动 03/17 16:35
9F:→ rularula:再将ODBC连线的服务名称指定成先前设定的连线服务名称 03/17 16:36
10F:→ rularula:连线字串会像是TNS=xxx;UID=xxx;PWD=xxx 给你参考一下罗 03/17 16:38
11F:推 jain00:rularula的方法是可行的,google一下oracle odbc driver 03/17 23:49
12F:→ kouun:终於解决~方法是 Server=IP/SID 我缺少/SID 03/18 03:00
13F:→ kouun:感谢大家的回答 03/18 03:00