C#里通过button按钮来查询SQL中的表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#里通过button按钮来查询SQL中的表相关的知识,希望对你有一定的参考价值。

1、设置好DATAGRIDVIEW绑定到一个DATAVIEW(最好是DATASET下的一个DATATABLE的一个VIEW,默认是DEFAULTVIEW,当然直接绑定到DATATABLE也是可以的)
2、当点击查询的时候,根据条件生成一个SQL语句,如:
select
*
from
table
where
图书编号='编号'
这里的编号就是你那个文本框的值
3、创建一个DATAADAPTER(数据适配器),把SELECTCOMMAND的COMMANDTEXT设置为上面的SQL语句
4、使用DATAADAPTER的FILL功能,把数据FILL到指定的表中(就是绑定到DATAGRIDVIEW的DATAVIEW对应的TABLE),此时,最好把这个表的数据先清空。
另外一个方案:
还是根据前面的方案,假设你的所有数据已经在一个DATATABLE中了,那么,可以通过对DATAVIEW的FILTER过滤功能来实现:Filter="图书编号='编号'",这个是最简单的。
第三个方案,其实跟第一个方案一样,不过,DATAGRIDVIEW的数据源是动态的,每次查询数据后的结果对象(DATATABLE或DATAVIEW)直接赋值给DATAGRIDVIEW的DATASOURCE,但不建议你使用这个方案,小系统还好,大系统,特别是有多人协作开发的系统最好不要这样。
参考技术A DataSet
ds;//定义数据集
Conclass.getCon();//调用公用类打开连接
ds
=
Conclass.getDataset("查询语句");//利用getDataset方法查询数据赋值给ds
dataGridView.DataSource1
=
ds.Tables[0];//将查询到的表的数据给dataGridview1
参考技术B 比如你查你的图书表里的内容
就用这个
dataGridView1.DataSource
=
图书表TableAdapter.GetDataAll();

无法取消查询

【中文标题】无法取消查询【英文标题】:Can not cancel Queries 【发布时间】:2020-11-11 20:26:04 【问题描述】:

好的 不知道这里发生了什么。我有无法取消的失控查询。我有一个查询可以从只有 250 行且大小为 1.5KB 的表中选择所有行。它现在已经运行了 30 分钟,应该只需要几毫秒。

我尝试通过点击工作表上的中止按钮、进入历史记录并选择查询并点击中止、通过 SQL 基于查询 ID 中止以及通过 SQL 基于会话 ID 中止来取消。

具有讽刺意味的是,每当我尝试通过 SQL 中止时,它显示查询已终止,然后它们仍显示为正在运行,我等待几分钟并重新运行查询,它再次显示为已终止,但它们仍在运行。

我也尝试注销并重新登录,但看到各种奇怪的错误:

内部错误:无法检索当前角色。 错误 您的 MFA 注册问题:您的注册存在问题 过程。请重试。 工作表未加载

我不知道发生了什么,但似乎在我转向的任何地方都有问题。任何帮助将不胜感激。

【问题讨论】:

【参考方案1】:

尝试完全注销,关闭浏览器,重新启动计算机,然后从那里开始。这是我的猜测:

有时查询历史记录(我假设您看到的内容仍在运行)需要刷新浏览器,但根据 MFA 错误,刷新浏览器似乎让您退出了 SAML/MFA 进程。李> 成功登录后,您可能会在尝试取消之前看到查询已经完成。

如果情况并非如此,并且您仍然看到问题,那么我们可能需要更多信息,或者快速致电 Snowflake 支持部门将引导您完成所有工作。我的猜测是,这完全是浏览器/UI 上的显示问题,而不是 Snowflake 出现问题。

【讨论】:

以上是关于C#里通过button按钮来查询SQL中的表的主要内容,如果未能解决你的问题,请参考以下文章

C#里怎样清空DataGridview中的数据

C#里如何点击“取消(button2)”按钮后关闭窗体2,并返回窗体1?

通过VS连接SQL SERVER并进行简单的查询功能

急!!在delphi中如何将sql server 2000数据库中的一个表中的内容全部导到excel表中

C#怎样把access数据库中的数据刷新一下显示在DataGridView中

高悬赏!如何实现在c#中写SQL查询2个不同的表插入2个不同的表的记录!