C# 连接Oracle的问题,高手来救命啊!

OracleCer 2010-10-03 05:47:21
是这样,小弟是超级新手,用的win7 64位的系统,机器上装的VS2008和Oracle 11g,这两个软件都是32的,今天在数据库中随便建了表,想试试如何连接和查询,结果一运行就弹出提示框,vshost.exe已经停止运行,关掉提示框,程序就停止了。

代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.OracleClient;

namespace JustDoIt
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Start ! ");
String conString = "Data Source = WENHAO; User Id = system ; Password = *******;";
String sql = "SELECT STU_ID FROM STUDENT";
OracleConnection conn = new OracleConnection(conString);
conn.Open();
OracleCommand cmd = new OracleCommand(sql, conn);
OracleDataReader myReader = cmd.ExecuteReader();//这行没出错
while (myReader.Read())//到这里就挂掉了
{
Console.WriteLine(myReader.GetInt32(0));
}
myReader.Close();
conn.Close();
Console.ReadKey();
}
}
}

逐行运行,发现就在我代码注释的那个地方挂掉了,每次都是弹出那个提示框,崩溃了,搞了一个下午了,没有弄明白,网上这个问题貌似出现的还不多,也没有什么有效的解决办法,各位大大们,救救我吧!!!


...全文
94 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
OracleCer 2010-10-03
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 openboy2010 的回复:]

应该是系统的问题,64位系统不支持32位的开发环境的,我建议你装个32位的windows7
[/Quote]

我也觉得是这样的,等国庆过去了,去买张盘回来,装个32位的系统,主要我这个是笔记本,装了32位的驱动貌似挺是问题的,呵呵,谢谢喽
钻石西瓜爸 2010-10-03
  • 打赏
  • 举报
回复
应该是系统的问题,64位系统不支持32位的开发环境的,我建议你装个32位的windows7
OracleCer 2010-10-03
  • 打赏
  • 举报
回复
OK了,这个问题解决了,5楼高手哦

可是新问题又出来了。。。。。。

运行后报错,说没找到表“ORA-00942: 表或视图不存在”。。。。。。。。。。。

How to do ........
OracleCer 2010-10-03
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 wuyq11 的回复:]

把程序编译位32位的或者安装64位的客户端
Oracle 11g R2 Client X64
public static string connectionString = @"Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=" + ProgramInfo.Dbip + ")(PORT=1521))) ……
[/Quote]

这位大哥说得好像很有道理哦,能麻烦问下怎么把程序编译成32位的吗?
我这里网速不怎么样,下个oracle比较麻烦
wuyq11 2010-10-03
  • 打赏
  • 举报
回复
把程序编译位32位的或者安装64位的客户端
Oracle 11g R2 Client X64
public static string connectionString = @"Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=" + ProgramInfo.Dbip + ")(PORT=1521))) (CONNECT_DATA=(SERVICE_NAME=" + ProgramInfo.Dbname + ")));User Id=" + ProgramInfo.Username + "; Password=" + ProgramInfo.Password + ";Unicode=True ";
OracleCer 2010-10-03
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 mackzhaozhonggang 的回复:]


myReader.Close();
删除
[/Quote]

删除掉还是不行了,谢谢哥们
mackzhaozhonggang 2010-10-03
  • 打赏
  • 举报
回复

myReader.Close();
删除
sbzk1111 2010-10-03
  • 打赏
  • 举报
回复
我看不太懂 还是等高手来吧

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧