C# gridview中的Oracle数据库表
我想从oracle数据库中的查询中获取结果,并将其放入gridview中。现在我的问题是,我不知道如何在gridview中输出它。我正在使用工具箱中的gridview,我的oracle连接正在工作。我还有权选择查询,我可以将其输出到列表框中。我只是不知道如何在gridview中执行此操作。我寻找它,我发现了这个:虽然这对我没有帮助 如何在gridview中输出它,使其看起来与oracle数据库中的普通表完全相同 我应该使用什么以及如何使用 这是我的代码:C# gridview中的Oracle数据库表,c#,winforms,oracle,gridview,C#,Winforms,Oracle,Gridview,我想从oracle数据库中的查询中获取结果,并将其放入gridview中。现在我的问题是,我不知道如何在gridview中输出它。我正在使用工具箱中的gridview,我的oracle连接正在工作。我还有权选择查询,我可以将其输出到列表框中。我只是不知道如何在gridview中执行此操作。我寻找它,我发现了这个:虽然这对我没有帮助 如何在gridview中输出它,使其看起来与oracle数据库中的普通表完全相同 我应该使用什么以及如何使用 这是我的代码: public void read()
public void read()
{
try
{
var conn = new OracleConnection("")
conn.Open();
OracleCommand cmd = new OracleCommand("select * from t1", conn);
OracleDataReader reader = cmd.ExecuteReader();
DataTable dataTable = new DataTable();
while (reader.Read())
{
var column1 = reader["vermogen"];
column = (column1.ToString());
listBox1.Items.Add(column);
}
conn.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
要将
DataTable
绑定到DataGridView
只需将代码更改为
public void read()
{
try
{
using(OracleConnection conn = new OracleConnection("....."))
using(OracleCommand cmd = new OracleCommand("select * from t1", conn))
{
conn.Open();
using(OracleDataReader reader = cmd.ExecuteReader())
{
DataTable dataTable = new DataTable();
dataTable.Load(reader);
dataGridView1.DataSource = dataTable;
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
OracleDataReader可以传递给DataTable的Load方法,然后该表就可以绑定到DataGridView数据源属性了。我还添加了一些使用声明,以确保正确处置使用的一次性物品。(特别是OracleConnection在异常情况下不关闭非常昂贵)您也可以使用
DataSet
:
public void read()
{
try
{
OracleConnection conn = new OracleConnection("");
OracleCommand cmd = new OracleCommand("select * from t1", conn);
conn.Open();
cmd.CommandType = CommandType.Text;
DataSet ds = new DataSet();
OracleDataAdapter da = new OracleDataAdapter();
da.SelectCommand = cmd;
da.Fill(ds);
dataGridView1.DataSource = ds.Tables[0];
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
首先建立连接在这种情况下,您并没有使用连接字符串全局地建立连接。然后对要执行的oracle sql命令使用oleDbcommand。在我的例子中,是“select*fromtable_name”,它将显示从表到数据网格的所有数据。我在一个按钮中编写了这段代码,用于在数据网格上显示数据
{
OleDbConnection conn = new OleDbConnection("");
OleDbCommand cmd = new OleDbCommand("select * from table_name", conn);
{
conn.Open();
OleDbDataReader reader = cmd.ExecuteReader();
{
DataTable dataTable = new DataTable();
dataTable.Load(reader);
dataGridView1.DataSource = dataTable;
}
conn.Close();
}
}
在哪一方面,相关问题没有起到作用?你说的是ASP.NET GridView还是WinForms DataGridView?@Steve WinForms。答案是使用mysql,没有任何解释。您只需初始化一个dataadapter并将结果加载到datatable中。然后将gridview的数据源设置为该DataTable。正如链接所指出的那样。它应该与任何数据库一起工作。请考虑解释如何以及为什么这是答案。单独的代码片段对操作没有帮助。