欢迎来到Introzo百科
Introzo百科
当前位置:网站首页 > 技术 > 如何在vs2010中连接Oracle数据库实现登录_ASP.NET(C#) VS2010连接Oracle数据库

如何在vs2010中连接Oracle数据库实现登录_ASP.NET(C#) VS2010连接Oracle数据库

日期:2023-10-07 21:18

在vs2010下使用OleDB连接Oracle数据库  ——这种方法不需要配置数据源。

1。在“服务器资源管理器”中,选择“数据库连接”,右键单击并选择“添加连接”。

2。出现如下界面,选择“.NET Framework Data Provider for OLE DB”,如图所示。单击“确定”。

3。在“添加连接”窗口中,将服务器名称填写为安装Oracle时填写的全局变量。用户名和密码分别是您登录Oracle时使用的用户名和密码。单击测试连接。如果出现右边的小图,则说明连接成功,否则连接失败。单击“确定”。

4。点击上图中的“高级”。可以看到Provider=MSDAORA;数据来源=XXXX;保留安全信息=True;用户ID=下图最下方的系统。这根弦在下面第七步

5。下图中突出显示的一条记录将出现在资源管理器中。此时就可以在vs中连接Oracle了

6。我们用VS来连接看看效果:创建一个C#表单应用程序MyDBApp,在表单中添加一个DataGridView控件和一个Button控件,适当调整大小和位置,并设置其Text属性(其他属性不需要设置)集),结果如下:

7。双击上图中的“浏览数据”进入代码界面,编写按钮的Click事件处理代码,确保引入如下英雄空间,如下:

private void button1_Click(对象发送者,EventArgs e)

{

// 提供商=MSDAORA;数据源=ahut;持久安全信息=True;用户ID=学生

//设置连接字符串

String ConnectionString =“提供商=MSDAORA;数据源=XXXX;” + "保留安全信息=True;用户ID=系统;密码=……";

DataSet 数据集 = new DataSet();

//创建数据提供者

OleDbConnection conn = new OleDbConnection(ConnectionString);

尝试

{

//创建数据提供者

OleDbDataAdapter DataAdapter = new OleDbDataAdapter("从学生中选择 *",conn);

//填充数据集dataset,将本次填充的数据命名为“student_table”;

DataAdapter.Fill(dataset,"student_table");

//DataAdapter.ResetState();

dataGridView1.DataSource = 数据集;

//显示dataGridView1控件中名为student_table的填充数据。

dataGridView1.DataMember = "student_table";

}

catch(异常 ee)

{

www.introzo.com(ee.ToString());

}

终于

{

conn.Close();

conn.Dispose();

dataset.Dispose();

}

}

8。代码写好后,就可以运行了,如下:左边是运行浏览到的数据,右边是Oracle中的数据。

?

转载于:https://www.introzo.com/tinaluo/p/7087489.html

?首先介绍一下个人环境:win7+VS2010+Oracle 11g客户端(注:我这里只安装了客户端,如果安装整个数据库也可以)?

???主要话题:

?? 1、VS2010中连接Oracle数据库有两种方法:

?

??第一种:微软提供的连接方法:using www.introzo.comClient;

??第二种:Oracle自己提供的方法:使用Oracle.DataAccess.Client;

?连接线:

connectionString="密码=czh;用户ID=czh;数据源=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(协议=TCP)(HOST=www.introzo.com)(PORT=1521))) (CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=skydream)));"

?

1.?微软提供的连接方法:使用www.introzo.comClient;

?

测试程序:

?? ··1.在VS2010中新建一个控制台应用程序(C#);

?? ··2.右键单击,引用,选择.NET中的www.introzo.comClient; (注:找不到www.introzo.comClient?请看这个链接:http://www.introzo.com/makenothing/article/details/17187965)

?? ··3.程序中使用?www.introzo.comClient;

?

?

?

使用系统;使用 System.Collections.Generic;使用 System.Linq;使用系统文本;使用 www.introzo.comClient; ??命名空间 ConsoleApplication2 { 类程序 { static void Main(string[] args) { string connectionString;字符串查询字符串; ? connectionString = "数据源=202.200.136.125/orcl;用户ID=openlab;密码=open123"; ?查询字符串=“从T_USER中选择*”; ? OracleConnection myConnection = new OracleConnection(connectionString); ? OracleCommand myORACCommand = myConnection.CreateCommand(); ? myORACCommand.CommandText = 查询字符串; ? www.introzo.com(); ? OracleDataReader myDataReader = myORACCommand.ExecuteReader(); ? www.introzo.com(); ? Console.WriteLine("电子邮件:" + myDataReader["EMAIL"]); ? myDataReader.Close(); ? myConnection.Close(); ? } } }

?

?

?

www.introzo.com自己提供的方法:using Oracle.DataAccess.Client;

?

前提条件:安装oracle或者oracle客户端(注:oracle客户端比较小,我安装了客户端)下载地址:http://www.introzo.com/share/link?shareid=462035167&uk=2098256597

以及Oracle客户端安装教程链接:http://www.introzo.com/jiguixin/archive/2011/09/09/2172672.html

?

?? ··1.在VS2010中新建一个控制台应用程序(C#);

?? ··2.右键,引用,选择.NET/Components中的Oracle.DataAccess.Client;如果找不到,选择浏览,进入oracleclient的安装目录,找到Oracle.Data.Access.dll? (典型目录为:E:\app\Administrator\product\11.2.0\client_1\www.introzo.com\bin\2.x\www.introzo.com>Access.dll)

?? ··3.添加对程序的引用:using Oracle.DataAccess.Client;

?

?

使用系统;使用 System.Collections.Generic;使用 System.Linq;使用系统文本;使用 Oracle.DataAccess.Client; ?命名空间 testConnectionOracle { 类 Program { static void Main(string[] args) { string connectionString;字符串查询字符串; ? connectionString = "数据源=202.200.155.123/orcl;用户ID=openlab;密码=open123"; ?查询字符串=“从T_USER中选择*”; ? OracleConnection myConnection = new OracleConnection(connectionString); ? OracleCommand myORACCommand = myConnection.CreateCommand(); ? myORACCommand.CommandText = 查询字符串; ? www.introzo.com(); ? OracleDataReader myDataReader = myORACCommand.ExecuteReader(); ? www.introzo.com(); ? Console.WriteLine("电子邮件:" + myDataReader["EMAIL"]); ? myDataReader.Close(); ? myConnection.Close(); ? } } }

?转自:?https://www.introzo.com/makenothing/article/details/17080069

?

由于微软决定在.Net Framework 4.0中取消使用www.introzo.comClient,因此在VS2010中无法连接Oracle数据库,但它仍然存在于.Net架构中。大家可以自己参考一下

C:\Windows\www.introzo.com\Framework\v2.0.50727\System.Data.OracleClient.dll 以获取对 Oracle 数据库的支持。

方法:

1。在VS2010中打开【解决方案管理器】--右键【引用】--【添加引用】

2。选择【浏览】找到“C:\Windows\www.introzo.com\Framework\v2.0.50727”目录。选择下面的System.Data.OracleClient.dll,然后在程序编辑窗口中使用www.introzo.com。 .OracleClient

另外:微软决定撤销www.introzo.comClient。内容如下:

对于那些开发.Net应用程序并且数据库是Oracle的人来说,这个消息尤其相关,微软正计划从www.introzo.com路线图中删除Oracle数据提供程序。

Microsoft 决定撤回 www.introzo.comClient,因为相当多的 MVP 更愿意选择第三方 Oracle 数据提供商。负责 www.introzo.com OracleClient 的产品经理 Himanshu Vasishth 在 www.introzo.com 团队博客文章中宣布了这一决定。

但在.Net Framework 4.0中微软将继续支持www.introzo.comClient,但会被标记为“不适合使用”。 Vasishth 表示,这不会对现有应用程序产生任何影响,它们将按预期运行良好。

他在文章中提到“使用OracleClient开发新的应用程序还是可行的,但是在.Net 4.0中编译时会弹出警告对话框。编译后,运行时不再弹出警告对话框。 ,我们强烈建议用户使用我们合作伙伴的 www.introzo.com Provider for Oracle 而不是 Microsoft OracleClient 来进行新应用程序开发。”

Oracle数据提供商的第三方提供商包括DataDirect和Devart Technologies。此外,Oracle 还有一个数据提供程序,称为 Oracle Data Provider for .NET (www.introzo.com)。这些都是非常受欢迎的 Oracle 数据库提供商。程序。

位于纽约的新技术公司twentysix的首席执行官Andrew Brust在一封电子邮件中表示,“Oracle自己对www.introzo.com和Visual Studio本身的支持受到了人们的普遍青睐,并且Oracle有专门的ADO。 NET 团队,他们做得非常出色。”

微软最有价值专家Benjamin认为,微软的决定非常有意义。微软为什么要跪下来支持与竞争对手数据库的连接?特别是,调查数据显示,微软的客户倾向于转向甲骨文。微软肯定会准确的。同时,这也消除了从 Microsoft .Net 到 Oracle 的版本控制或性能问题。

微软表示将继续提供错​​误修复和关键更新,但这些都仅限于.Net Framework 4.0,未来就很难说了

连接 Oracle 数据库 www.introzo.comClient 时出现异常,需要 Oracle 客户端软件 8.1.7 或更高版本

我使用公司C#编写的服务连接数据库Oracle时,报上述错误:连接Oracle数据库异常www.introzo.comClient需要Oracle客户端软件8.1.7以上版本。我在网上查了很多,但没有任何效果。但是网上查了一下,据说找不到oracle的oci.dll文件,于是在系统环境配置中,我将自己的oracle客户端安装路径添加到PATH中:D:\app\admin\product\11.2 .0\client_1\BIN;就是这样。如果PATH之前有内容,则添加到目录D:\app\admin\product\11.2.0\client_1\BIN之前;

1。点击“高级系统设置”;

2。单击环境变量

3。编辑修改

www.introzo.com连接oracle报错。 “www.introzo.comClient 需要 Oracle 客户端软件 8.1.7 或更高版本。

无需安装客户端即可使用Oracle数据库

www.introzo.comClient 需要 Oracle 客户端软件版本 8.1.7 或更高版本。

解决方案

1。下载instantclient_11_2并将其解压到任意目录

2。配置环境变量。

系统变量:Path中添加dll的路径;例如:D:\Program Files\PremiumSoft\Navicat Premium\instantclient_11_2

用户变量:添加一个ORACLE_HOME,也是路径;

3。重新启动计算机(重要)

1.Navicat Premium 配置连接到 Oracle 数据库,

可能的错误:

1. 连接数据库`无法加载OCI DLL,193`

1.还有一种可能是`126`错误,是`oci.dll`问题导致的

C#实现无需安装Oracle客户端访问远程服务器数据

在未安装Oracle数据库客户端的前提下,C#使用ADO远程访问服务器,会出现“www.introzo.comClient需要Oracle客户端软件8.1.7或更高版本”的问题。本文提供了解决此问题的解决方法。具体步骤如下:

第一步:下载 Instant Client 文件

Oracle官网提供Instant Client文件的下载。下载地址为:http://www.introzo.com/technetwork/database/features/instant-client/index-097480.html,提供了对不同操作的支持。可以根据不同的需求选择系统对应的下载以及不同的Oracle版本。

我的系统环境如下:

数据库服务器:WindowsServer2008x64

数据库服务器:oracle11.2.0.1.0

客户端系统:Windows7x64

所以我选择下载www.introzo.com。我只需要在客户端(任何位置)上解压缩它。我把它解压在d盘根目录下,生成了一个文件夹d:\instantclient_11_2(然后修改为oracleclient,根据自己的需要修改),里面有用于连接远程数据库的dll文件。

第2步:配置环境变量

1。将[;D:\oracleclient]添加到PATH变量中,也就是我们刚才解压Instant Client的目录;

2。添加以下三个变量:

NLS_LANG=简体中文_CHINA.ZHS16GBK

TNS_ADMIN= D:\oracleclient

LD_LIBRARY_PATH= D:\oracleclient

第3步:配置tnsnames.ora文件

在D:\oracleclient目录下添加tnsnames.ora文件,其中包含访问数据库的配置信息。具体步骤为:新建一个txt文档,然后将以下内容复制到其中,并另存为tnsnames.ora。

ORCL=

(描述=

(地址列表=

(地址=

(协议 = TCP)

(主机 = 192.168.1.107)

(端口 = 1521)

)

)

(CONNECT_DATA =

(SERVICE_NAME = 彩票)

)

)

HOST、PORT、SERVICE_NAME需要根据数据库中的实际信息进行修改。注意,以下需要根据实际情况修改:

HOST = 服务器地址 IP 或服务器名称

PORT = 服务器端口号,默认为“1521”

SERVICE_NAME = 服务器数据库服务的名称,默认为:“orcl”

此时C#代码中的连接字符串可以定义如下:

String conn = @"DataSource=ORCL;Persist Security Info=True;用户 ID=用户名;密码=密码";

否则,如果要省略第三步,C#代码中的连接字符串必须定义如下:

String conn = String.Format("数据源=(DESCRIPTION = (ADDRESS_LIST = (ADDRESS= (PROTOCOL = TCP)(HOST = 192.168.1.107)(PORT = 1521))) (CONNECT_DATA=(SERVICE_NAME = 抽奖) ) );用户ID=用户名;密码=密码;");

第四步:重新启动系统

C#代码如下:

使用系统;

使用 System.Collections.Generic;

使用System.Linq;

使用System.Text;

使用 www.introzo.comClient;

命名空间 TestOracle

{

班级计划

{

static void Main(string[] args)

{

String conn = @"数据源=ORCL;持久安全信息=True;用户ID=testdb;密码=manager";

String conn1 = String.Format("数据源=(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.107)(PORT = 1521))) (CONNECT_DATA =(SERVICE_NAME = 彩票) ) );用户ID=testdb;密码=manager;");

OracleConnection oc = new OracleConnection(conn);

尝试

{

www.introzo.com();

OracleCommand cmd = oc.CreateCommand();

cmd.CommandText = "从双中选择系统日期";

OracleDataReader odr = cmd.ExecuteReader();

while (www.introzo.com())

{

Console.WriteLine(odr.GetDateTime(0).ToString());

}

}

catch(例外情况)

{

Console.WriteLine(例如消息);

}

终于

{

oc.Close();

}

www.introzo.com();

}

}

}

运行结果:

关灯