分享

ADO.NET连接和操作Oracle数据库

 行走在理想边缘 2019-05-29

1.NET Framework数据提供程序

用于Oracle的.NET Framework数据提供程序已经被弃用,需要下载Oracle Developer Tools for Visual Studio与合适的ODAC数据访问提供程序。

1.1插件下载与安装

1)  下载地址:http://www.oracle.com/technetwork/topics/dotnet/downloads/index.html

2)  下载后默认安装即可。

 1.2为Visual Studio安装扩展

1)        默认情况下插件安装完成后,会在当前系统的如下路径: C:\Program Files (x86)\Oracle Developer Tools for VS2017

2)        打开C:\Program Files (x86)\Oracle Developer Tools for VS2017\odt,找到Oracle.VsDevTools.15.0,运行即可。


1.3检查安装



 有两种连接方式,此处使用EZ连接,TNS不做展开。


至此证明扩展已安装成功。

2.ADO.NET连接和操作数据库

1.基本操作步骤

1)        建立数据库连接

2)        创建SQL命令

3)        执行SQL命令

4)        处理SQL命令结果

 

2.代码及操作

1)建控制台应用程序,并添加引用

引用类库位置:C:\Program Files (x86)\Oracle Developer Tools forVS2017\odp.net\managed\common


2)        实验代码
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using Oracle.ManagedDataAccess.Client;//oracle数据提供程序




  7. namespace ConsoleApp2
  8. {
  9.     class Program
  10.     {
  11.         static void Main(string[] args)
  12.         {
  13.             string constr = "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=Show)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=hometest2)));Persist Security Info=True;User ID=system;Password=123456;";
  14.             OracleConnection con = new OracleConnection(constr);//连接到数据库
  15.             con.Open();
  16.             Console.WriteLine("数据库连接状态:");
  17.             Console.WriteLine("Connection State " + con.State);
  18.             Console.WriteLine();
  19.             string cmdText = "select * from ADMIN ";
  20.             //创建SQL语句
  21.             OracleCommand cmd = new OracleCommand(cmdText, con);
  22.             //执行语句并返回结果
  23.             OracleDataReader dr = cmd.ExecuteReader();
  24.             Console.WriteLine("用户\t密码");
  25.             while (dr.Read())
  26.             {
  27.                 Console.WriteLine("{0}\t{1}", dr[0], dr[1]);
  28.             }
  29.             Console.WriteLine("查询成功");
  30.             Console.WriteLine();


  31.             //执行一个插入操作
  32.             OracleCommand Incmd = new OracleCommand("insert into ADMIN (NAME,PWD) values('admin2','123456')", con);
  33.             if(Incmd.ExecuteNonQuery()==1)//执行SQL语句并返回受影响行
  34.             {
  35.                 Console.WriteLine("插入成功");
  36.             }
  37.             else
  38.             {
  39.                 Console.WriteLine("插入失败");
  40.             }
  41.             con.Close();




  42.         }
  43.     }
  44. }

3)        实验截图




    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多