【问题标题】:Add a row using linq or sql in VB.NET在 VB.NET 中使用 linq 或 sql 添加一行
【发布时间】:2015-04-10 04:53:38
【问题描述】:

我正在开发一个应用程序,作为其中一个步骤,我需要将一组信息备份到 SQL 数据库。

我没有任何使用 SQL 的经验,并希望我能找到一个简单的命令,它只会添加一行包含我需要的信息......但我不太了解我的信息我已经找到了。我什至在使用 Visual Studio 中提供的 sn-p 时遇到了问题。

我尝试使用 sn-p 添加一行,这是生成的代码。

对 RDataSet.ArchivedIncidentsDataTable 的引用不断给我一条错误消息,告诉我“对非共享对象的对象引用需要对象引用”,对我来说,这是您可能收到的最没有帮助的错误消息之一。我不明白这意味着什么,或者我需要做什么才能修复它。 这是我拥有的代码,基本上只是提供的 sn-p:

    Private Sub Save_SQLBackup_Info()
        Dim newRow = CType(RDataSet.ArchivedIncidentsDataTable.NewRow(), RDataSet.ArchivedIncidentsRow)
    newRow.CustomerID = "A124"
    newRow.CompanyName = "Acme"
    RDataSet.ArchivedIncidentsDataTable.Rows.Add(newRow)

End Sub

我不确定为这少量代码填写字段是如何产生错误的。

另外,这段代码运行后,我不是必须运行命令来更新数据库吗?我一直在网上关注的指南都引用了类似的内容,但我不了解它们的其他部分。

我确定我遇到的问题是“你没有声明 X。”,但是我对 SQL 了解不多……如果这就是我正在使用的。 我会很感激一些指导。 我需要做的就是使用表单中的几个字段向数据库中添加一行。

我有一个作为数据对象链接的在线 SQL 服务器,数据集的标题是 RDataSet ,数据表的标题是 ArchivedIncidentsDataTable。 我在网上找到的一些指南引用了我没有的不同部分,比如数据适配器,和/或没有提到他们是如何到达那个部分的……我完全迷路了。

是否有任何我可以运行的单行命令将我想添加到该数据库的一行中的信息拍摄?我不明白为什么它必须这么复杂......

编辑: 答案之一是将数据集的一个实例拖到表单上。 完成此操作并尝试引用它之后,我现在收到一条错误消息,告诉我:

"Access of shared member, constant member, enum member or nested type through an instance; qualifying expression will not be evaluated.

此消息出现在自动更正选项下,让我可以选择用 RDataset 替换我添加到表单 RDataSet1 中的数据集。

将鼠标悬停在代码“RDataSet1.ArchivedIncidentsDataTable.NewRow()”上时,我仍然看到错误消息“对象引用需要对象引用”。

【问题讨论】:

  • 谢谢你的建议,我现在把几个句子分成了段落格式,这样更容易阅读。

标签: sql vb.net linq


【解决方案1】:

消息

对非共享对象的对象引用需要对象引用

意味着您尝试访问一个类的成员,就像它是共享成员一样,但事实并非如此,因此您需要该类的实际实例(对象引用)。​​

如果您使用的是WinForms,您只需将RDataSet 拖到您的Form 上,它就会在您的Form 中生成一个名为RDataSet1 或类似的字段(我想您使用Visual Studio 的数据集设计器)。

然后使用RDataSet1(对象引用)代替RDataSet(类型)。

【讨论】:

  • 感谢您的提示。我没有这样做,所以我在我的工具箱下找到了 RDataSet 选项并将其拖到表单中。我现在仍然收到错误消息(已编辑主帖),但是现在我还看到了一个自动更正选项,可以用 RDataSet 替换 RDataSet1。
  • 另外,非常感谢您非常解释 RDataSet1 作为对象引用和 RDataSet 作为类型之间的区别。这对我来说很有意义。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多