问题标签 [sqlcommandbuilder]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
21195 浏览

c# - 在 C# 中的 SQL 查询中将字符串数组作为参数传递

在我用 C# 编写的应用程序中,我正在编写一个 SQL 查询。以下是查询

@resources是具有一个或多个字符串的用户输入参数。

我的查询失败但没有显示错误

据我说,查询失败,因为@resources正在传递参数

(开头和结尾有2 个逗号,这使我的查询失败)。

[Resource No_]是数据库中的类型NVARCHAR

谷歌搜索后,我在这个主题上找到了一些帮助,但所有的都适用于[Resource No_] 类型Integer

0 投票
2 回答
90 浏览

c# - 数据集不会更新 C# 中的任何内容

我已经在 ms-sql 中编写了这个程序

还有这段代码

conec1正在工作,但上面的代码没有更新任何内容。错误在哪里?

0 投票
2 回答
387 浏览

c# - sqlCommandBuilder 更新未按预期工作

我正在尝试使用 CommandBuilder 进行更新。当通过按钮命令检索获取数据的代码时,该代码运行良好,但是当我从 page_load 获取数据时,更新失败。

该程序只是从数据库中获取数据,然后使用 sqlCommandBuilder 对特定表进行更新。

我不知道发生了什么。

这是失败的代码。

这是完美运行的代码。

0 投票
2 回答
1676 浏览

c# - SqlDataAdapter.Update(dataset) 方法插入新行但不更新现有行

我正在创建具有 DataGrigView 来呈现表格的 winform 应用程序。我有一个负责使用 DB 的 DAL 类。

有一种方法可以加载表的数据:

第二种方法负责使用表中所做的更改来更新数据库:

问题:如果在 Items 表中添加或删除了新行 - UpdateItemsByOrder 按预期添加/删除数据库中的行。但是 Items 表的现有行中的更新不会在 DB 中更新。

没有错误或异常。我尝试添加 builder.GetUpdateCommand() 命令 = 没有结果。

我很乐意得到任何帮助或建议。谢谢

P>S> 我正在使用这个 MSDN LINK来学习如何使用 SQLAdapter

0 投票
1 回答
518 浏览

sql - 使用具有 Join 的 SQL 命令对象更新 SQL Server

我正在尝试使用 VB.NET 2010 进行数据访问。

我正在慢慢构建一个虚拟的联系人应用程序。我让它使用 SQL 命令对象来处理 ADD、UPDATE 和 DELETE,但它只支持单表查询。我知道如果有连接,我必须手动设置命令,但不确定如何。

这是我当前的代码,它从联系人表和联系人类型表中检索数据

sSqlContactsJoined 的值为:

任何指向可能向我展示如何手动输入 CommandBulder 的 ADD UPDATE 和 DELETE 语句的教程的指针?

0 投票
1 回答
760 浏览

c# - SqlDataAdapter.Update 直到第二次更新才写入表

我有一个用 C# 2010 Express 开发的程序,它的表单由一个 DataGridView 组成,下面有一个单独的单元格编辑字段。选择一行(在其左端单击)时,该行中的值将复制到编辑字段中。进行了更改,并单击了“记忆交易”按钮。新值出现在 DataGridView 中。如果表单随后关闭并重新打开(处理并重新加载),则显示原始值,而不是新值。显然数据库记录没有更新。

如果重复上述过程,除了在关闭表单之前再次选择记录并再次单击“记忆事务”按钮之外,该值将存储在数据库中。当窗体关闭然后重新打开时,会出现新值。

显然,所需的行为是在第一次单击“记忆事务”按钮时立即将值存储在数据库中。

以下声明出现在表单类的顶部:

方法 load_DataGridView() 如下所示。请注意,适配器的更新、删除和插入查询是通过调用它们各自的 SqlCommandBuilder 的 GetXXXCommand() 方法构建的。调试期间的断点表明这些已正确填充。

点击 Memorize Transaction 按钮时调用的代码如下:

从来没有抛出异常。我怀疑将数据从 DataGridView 拉出到编辑字段中,然后以某种方式再次将其写回的操作会以某种方式使用 _adapter.Update(_dt) 命令检测行已更改的能力,因此当它被调用时,它不会不更新任何东西。然后在第二次尝试时,当重新选择行(显示新值)但没有进行编辑更改时,它确实有效。不知何故,即使新值出现在网格中,就像尚未提交更改并且必须重新选择该行才能发生这种情况。

populateRowFromFields 方法如下,使用单元格索引的列名引用将编辑字段中的值写回行中的单元格值:

帮助!这让我发疯!

0 投票
1 回答
1057 浏览

c# - 如何使用自动增量键和 SqlDataAdapters 添加新行做数据库

所以,我有这个我必须维护的内部数据访问框架,我要向它添加事务。我在放入一个包时遇到问题:事务、SqlDataAdapters、SqlCommandBuilders 和主键定义为自动增量的表。

这是我到目前为止所拥有的

我的问题是,当我尝试插入数据时,它永远不会被插入,而当我检查数据集时,它们永远不会有新的自动增量键。我添加的新记录始终为 1

0 投票
1 回答
79 浏览

mysql - 如何使用 .Merge() 方法在合并 DataTables 时覆盖值?

有没有办法在使用 .Merge() 方法合并 DataTables 时覆盖值?

例如,如果我有两个具有相同原理图的数据表。

两者都有两列:Names | Enabled;

DataTable1 第一行条目是:Peter Punani | true;

DataTable2 第一行条目是:Peter Punani | false;

如果我使用 .Merge() 方法合并它们 - DataTable1.merge(DataTable2);- 则 DataTable1 将有 2 行,如下所示:

现在很明显,如果我尝试 .Update() 将 SqlCommandBuilder 用于我的 SQL DB,它会给我一个错误语句,因为我的主键(名称)中有两个相同的值。

但我希望 DB1 接受与 DB2 的差异,所以它看起来像:(并对所有其他与 DB1 不同的条目执行此操作。)

那么合并这些表的最佳方法是什么,以便我可以正确更新它们?

0 投票
3 回答
729 浏览

c# - 选择命令初始化错误

问题

我已经为此苦苦挣扎了一段时间。虽然我认为我已经初始化了 select 命令,但我有以下错误?

dataadapter.selectcommand.connection 属性需要初始化

我知道由于没有设置主键,我没有收到此错误,因为我已阅读这可能是问题所在。我肯定有一个主键。

背景

此函数选择使用 if 语句调用的查询。在查询中有参数化变量,这些变量是根据最终用户在两个组合框中选择的内容来选择的。

示例查询

不工作的位是Update_Click事件句柄。

代码

0 投票
1 回答
1602 浏览

sql - SqlDataAdapter.update() not updating database

I am searching for (PostId,UserId) into PostLikes table using SqlDataAdapter, if the row is found , I am using SqlCommandBuilder.GetDeleteCommand() to generate the delete instruction and deleting the underlying row, if the row is not found, then I use SqlCommandBuilder.GetInsertCommand() to generate the insert command and inserting the row to the table using SqlDataAdapter.Update(). But the row is not getting inserted to the table in database. Here is what I have done so far

and the table
PostLikes(LikeId,PostId,UserId)