ADO.NET与Oracle(一):获取多行记录集
近期接触ADO.NET和Oracle。将我寻常遇到的一些问题和大家共享。
我认为要想入门ADO.NET操作Oracle,最主要的要求就是要会通过ADO.NET更新Oracle中的数据。
该文简单讲些利用Command对象更新数据库
全部内容基于VS2010和Oracle11g(32bit)
1、连接数据库
连接数据库依靠OracleConnection对象
OracleConnection con = new OracleConnection("data source=orcl;uid=system;pwd=********");
orcl是数据库的名字,这是安装oracle时系统默认的。
安装好数据库后,也能够通过Database Configuration Assistant工具来删除或创建数据库
uid是登录名。pwd是登陆口令
要想连接到数据库,仅仅需运行con.Open()方法
而要断开连接时,仅仅需运行con.Close()或con.Dispose()方法。
2、操作数据库
连接好数据库,就能够对数据库进行操作了
从最简单的操作做起,即从数据库中返回全部记录
如今在数据库中创建一个product表
例如以下:
ID | Name | Price | Count |
001 | Apple | 6 | 3 |
002 | Orange | 5 | 4 |
003 | Pear | 4 | 2 |
上表记录了苹果和橙子的ID以及单位价格和数量。
当中ID、Name都是varchar类型的数据,而Price和Count都是Number类型的数据
如今尝试读取表中的全部数据。再将这些数据全然显示的屏幕上。
代码例如以下
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data; using System.Data.OracleClient; namespace DataReader { class Program { static void Main(string[] args) { try { using (OracleConnection con = new OracleConnection("data source=orcl;uid=system;pwd=wu92890910xu")) { using (OracleCommand cmd = new OracleCommand("select * from product", con)) { con.Open(); OracleDataReader dataReader = cmd.ExecuteReader(); if (dataReader.HasRows) Console.WriteLine("读取到数据..."); else Console.WriteLine("未读取到数据..."); while (dataReader.Read()) { Console.WriteLine(dataReader.GetString(1) + ": " + dataReader.GetDouble(2) * dataReader.GetDouble(3)); } } } } catch (Exception ex) { Console.WriteLine(ex.Message); } Console.ReadKey(); } } }
你能够尝试把select * from product 改成select id,name from product之类的语句
附:假设要使用ADO.NET操作Oracle,必须包含命名空间
using System.Data.OracleClient;
该命名空间是由Oracle公司提供的。NET本身不提供。
假设你须要那个.dll文件,能够e-mail:cf520wuxu@outlook.com