社区编辑申请
注册/登录
揭秘ADO.NET OracleClient命名空间对象
开发 后端
目前访问数据库的技术有很多,这里介绍了ADO.NET OracleClient命名空间中常用对象OracleConnection对象、OracleCommand对象。

大家都知道随着技术的发展,访问数据库的方式也很多,不知道大家喜欢用什么方法去访问数据库呢?先给大家介绍常见的几种:开放数据库互联(ODBC)、数据访问对象(DAO)、远程数据对象(RDO)、ActiveX数据对象(ADO)。我们今天主要要学习ADO.NET OracleClient命名空间中的几个常用对象,用这作为对ADO.NET认识学习的开始。

#T#ADO与ADO.NET既有相似也有区别,他们都能够编写对数据库服务器中的数据进行访问和操作的应用程序,并且易于使用、高速度、低内存支出和占用磁盘空间较少,支持用于建立基于客户端/服务器和Web的应用程序的主要功能。但是ADO使用OLEDB接口并基于微软的COM技术,而ADO.NET拥有自己的ADO.NET接口并且基于微软的.NET体系架构。众所周知.NET体系不同于COM体系,ADO.NET接口也就完全不同于ADO和OLEDB接口,这也就是说ADO.NET为.NET构架提供了优化的数据访问模型,和基于COM的ADO是完全两样的数据访问方式。

ADO.NET是一组访问数据源的面向对象的类库。简单的理解,数据源就是数据库,它同时也能够是文本文件、Excel表格或者XML文件。ADO.NET里包括了许多专门用于和数据打交道的对象。下面介绍了一些最常用的对象。这些对象是学习ADO.NET必须了解的。掌握它们后我们将了解使用ADO.NET和数据打交道需要考虑哪些事情。

一、ADO.NET OracleClient之OracleConnection对象

要访问一个数据源,你必须先建立一个到它的连接。这个连接里描述了数据库服务器类型、数据库名字、用户名、密码,和连接数据库所需要的其它参数。command对象通过使用connection对象来知道是在哪个数据库上面执行ORACLE命令。

  1. OracleConnectionoracleConn=newOracleConnection();  
  2. oracleConn.ConnectionString="UserId=scott;Password=tiger;  
  3. DataSource=oracleSN;";  
  4. oracleConn.Open(); 

二、ADO.NET OracleClient之OracleCommand对象

连接数据库后就可以开始想要执行的数据库操作,这个是通过command对象完成,command对象一般被用来发送ORACLE语句给数据库。command对象通过connection对象得知道应该与哪个数据库进行连接。我们既可以用command对象来直接执行ORACLE命令,也可以将一个command对象的引用传递给OracleDataAdapter,OracleDataAdapter能包含一系列的command对象,可以处理大量数据。

  1. publicvoidReadMyData(stringconnectionString)  
  2. {  
  3. stringqueryString="SELECTEmpNo,DeptNoFROMScott.Emp";  
  4. OracleConnectionconnection=newOracleConnection(connectionString)  
  5. {  
  6. OracleCommandcommand=newOracleCommand(queryString,connection);  
  7. connection.Open();  
  8. OracleDataReaderreader=command.ExecuteReader();  
  9. try  
  10. {  
  11. while(reader.Read())  
  12. {  
  13. Console.WriteLine(reader.GetInt32(0)+","+reader.GetInt32(1));  
  14. }  
  15. }  
  16. finally  
  17. {  
  18. reader.Close();  
  19. }  
  20. }  
责任编辑:田树 来源: 博客
相关推荐

2022-03-10 08:24:17

Docker容器SaaS

2022-02-12 12:26:45

2022-04-01 10:08:21

SQL 优化MySQL数据库

2022-04-19 14:41:29

Oracle数据库SQL

2022-05-23 10:55:19

华为数字化转型架构蓝图

2022-05-06 09:21:21

TypeScriptinterfacetype

2022-05-17 13:40:21

云原生混部开源

2022-04-25 14:41:15

甲骨文数据库机数据库

2022-04-07 18:12:30

数据库

2011-05-20 14:54:46

ADO.NET命名空间

2011-05-20 14:54:46

ADO.NET

2022-04-04 10:28:49

C#项目WPF

2022-04-08 08:26:03

JavaHTTP请求

2022-04-02 17:20:00

微前端应用技术

2022-03-17 08:30:28

Python私有属性私有方法

2022-04-25 14:41:22

区块链气候变化代币

2022-04-21 09:26:41

FastDFS开源分布式文件系统

2009-11-04 13:51:46

ADO.NET性能

2022-04-20 15:37:54

恶意软件漏洞恶意代码

2022-04-12 10:36:52

数据库PostgreSQLMongoDB

同话题下的热门内容

Python 字符串总结,建议收藏!这份Java日志格式规范,拿走不谢!Mybatis-Plus官方发布分库分表神器,一个依赖轻松搞定!后端思维篇:如何应用设计模式优化代码改变 Python 对象规则的黑魔法 Metaclass几种限流算法的Go语言实现JMeter关联之正则表达式提取器在 Go 中实现一个支持并发的 TCP 服务端

编辑推荐

使用Kotlin做开发一个月后的感想面试官问你什么是消息队列?把这篇甩给他!五大自动化测试的Python框架图文详解两种算法:深度优先遍历(DFS)和广度优先遍历(BFS)2018年最流行的十大编程语言,其中包括你用的语言吗?
我收藏的内容
点赞
收藏

51CTO技术栈公众号