【问题标题】:Execute a random SQL query and get the result into datagridview执行随机 SQL 查询并将结果放入 datagridview
【发布时间】:2013-02-07 14:25:40
【问题描述】:

我正在使用 C# 和 MySQL

到目前为止,我已经尝试使用 DataSet 和 MySqlDataAdapter 成功执行 SELECT、INSERT、DELETE 命令并在 datagridview 中显示结果。

但现在我想1.执行随机查询(无论用户在文本框中输入什么内容并按下执行按钮)以及2.在 datagridview 中显示结果** >.

归档该任务需要哪些步骤?

(我尝试搜索但只返回人们使用特定命令(如 SELECT)的结果,我的情况不同,查询是由用户随机输入的)

【问题讨论】:

  • 由于您已经尝试过执行选择、插入、删除命令,您可以将用户输入从文本框传递到 SqlCommand 文本中
  • 不是那么简单,从那以后我使用ExecuteNonQuery,然后通过dataset.Clear和adapter.Fill显示新更新的数据库表。但是现在结果不一样了,不知道怎么弄,比如这个查询该怎么办:SELECT COUNT(*) from TableName
  • 您可以将结果绑定到datagridview。
  • @GianAcuna 你不介意给我一个像几行代码这样的例子并解释你做了什么吗?

标签: c# mysql


【解决方案1】:

这是一个将查询结果绑定到gridview的示例代码sn-p:

DataSet objDataSet = new DataSet();
SqlConnection objConn = new SqlConnection();

SqlCommand objComm = new SqlCommand("SELECT COUNT(*) FROM table", objConn);

SqlDataAdapter objDataAdapter = new SqlDataAdapter(objComm);

if (objConn.State == ConnectionState.Closed)
{
    objConn.Open();
}

objDataAdapter.Fill(objDataSet, strTable);

dataGridView1.DataSource = objDataSet;

【讨论】:

  • 嘿,我复制并粘贴了您的代码,但什么也没发生,我必须添加 DataMember 吗?
  • 你要先建立连接
  • 我让它工作了,基本上 INSERT、UPDATE 和 DELETE 命令只返回受执行查询影响的行数,因此您实际上不能在 datagridview 中显示任何内容,但您可以显示一个 messageBox 显示有多少row(s) 受到影响,除了那些命令,只需使用 Adapter 和 DataSet 填充并在 datagridview 中显示结果。
  • 我的回答对你的问题有帮助吗?
猜你喜欢
  • 2017-09-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-30
  • 2011-04-25
  • 2013-07-16
相关资源
最近更新 更多