oracle c# 查询 datatable,将SQL表读入C#DataTable

有很多方法。

使用ADO.Net并在数据适配器上使用fill来获取DataTable:

using (SqlDataAdapter dataAdapter

= new SqlDataAdapter ("SELECT blah FROM blahblah ", sqlConn))

{

// create the DataSet

DataSet dataSet = new DataSet();

// fill the DataSet using our DataAdapter

dataAdapter.Fill (dataSet);

}

然后,您可以从数据集中获取数据表。

请注意,未使用升级的答案数据集中的内容(它出现在我的答案后面)

// create data adapter

SqlDataAdapter da = new SqlDataAdapter(cmd);

// this will query your database and return the result to your datatable

da.Fill(dataTable);

这是我的首选。

我强烈建议您看一下实体框架...使用数据表和数据集不是一个好主意。它们上没有类型安全性,这意味着只能在运行时进行调试。有了强类型的集合(可以从使用LINQ2SQL或实体框架中获得),您的生活会容易得多。

编辑:也许我不清楚:数据表=良好,数据集=邪恶。如果您使用的是ADO.Net,则可以同时使用这两种技术(EF,linq2sql,dapper,nhibernate和本月的orm),因为它们通常位于ado.net之上。获得的好处是,通过利用代码生成,只要您具有正确的抽象级别,就可以随着模式更改而更轻松地更新模型。

ado.net适配器使用提供程序来公开数据库的类型信息,例如,默认情况下它使用sql服务器提供程序,您也可以插入-例如-devart postgress提供程序,并且仍然可以访问类型信息允许您像上面一样使用您选择的格式(几乎不费力-有一些怪癖)-我相信Microsoft还提供了Oracle提供程序。这样做的全部目的是尽可能地从数据库实现中抽象出来。

你可能感兴趣的:(oracle,c#,查询,datatable)