关键字:人大金仓、KingbaseES、
- 概述
.NET Framework中有用于与OLEDB数据源进行连接和操作的命名空间“System.Data.OleDb”。“System.Data.OleDb”命名空间提供了用于连接、执行查询和操作OLEDB数据源的类和接口,包含有:OleDbConnection、OleDbCommand、OleDbDataReader等,用于建立连接、执行SQL语句和获取查询结果。
类OleDbConnection表示与数据源的唯一连接,对于客户端/服务器数据库系统,它等效于与服务器的网络连接。在创建OleDbConnection实例时,所有属性都设置为其初始值。可以在单个的OleDbConnection打开多个DataReader。若果使用的OLEDB驱动程序在单个连接上不支持多个DataReader,则驱动程序会为每个连接隐式打开一个附加连接。OleDb超出范围不会关闭,必须通过调用Close或Dispose或使用OleDbConnection语句中的using对象来显示的关闭连接。
常用的方法:
Open():使用由ConnectionString指定的属性设置打开一个数据连接。
Close():关闭到数据源的连接。
Dispose():执行与释放或重置非托管资源关联的应用程序定义的任务。
类OleDbCommand表示要对数据源执行的SQL语句或存储过程,创建OleDbCommand实例时,读/写属性将设置为初始值。
常用方法:
ExecuteReader():执行命令并生成一个OleDbDataReader。
ExecuteNonQuery():执行SQL的INSERT、DELETE、UPDATE、和SET等语句命令,并返回所受影响的行数。
ExecuteScalar():执行查询,并返回查询所返回的结果集中的第一行第一列。忽略其它行和列。
Prepare():在数据源上创建准备就绪(或已编译)的命令版本。
注:对于当前版本的KbOleDb只支持调用ExecuteNonQuery()方法。
类OleDbDataReader提供从数据源读取数据行的只进流的方法。若要创建OleDbDataReader对象,必须调用OleDbCommand对象方法ExecuteReader,而不是直接使用构造函数。在关闭OleDbConnection对象之前,需先关闭OleDbDataReader对象。
常用方法:
Close():关闭OleDbDataReader对象。
Read():让OleDbDataReader前进到下一条记录。
ToString():返回表示当前对象的字符串。
示例使用Visual Studio 2013进行工程的创建,新建-项目-Visual C#-控制台应用程序。
在源文件Program.cs文件中添加命名空间:
using System.Data.OleDb;
构建连接串(该连接串的设置与使用ADODB调用时一致):
string ConnectionString = "Provider=KingbaseES.1; Data Source=localhost; User ID=system; Password= 123; Location=systembase; port=65432";
OleDbConnection cn = new OleDbConnection(ConnectionString);
cn.Open();
string query = "select * from test order by id”;
OleDbCommand command = new OleDbCommand(query, cn);
OleDbDataReader reader = command.ExecuteReader();
Console.WriteLine(reader[0].ToString();
cn.Close();