【问题标题】:what do i write into c# to edit the data in an access database我在 C# 中写入什么来编辑访问数据库中的数据
【发布时间】:2021-04-12 08:16:57
【问题描述】:

我有一个在实际程序中使用 sql 创建的访问数据库,并使用“BIT”来确定记录的真假。现在我想用update sql语句来改变我的记录是真还是假。

例如,我有一个支付数据库表和一个支付记录,它是真或假。

if (HasPaidCBOX.Checked)
{
    Cmd.CommandText = "UPDATE Payments SET Paid = @p WHERE PlayerID ='" + PaymentForm.ID + "'";
    Cmd.Parameters.AddWithValue("@p", xxx);
    Cmd.ExecuteNonQuery();
}

我想知道标有三个 x 的地方是什么。

【问题讨论】:

  • true 不起作用吗?
  • 另外,您应该在那里参数化 both 值,而不仅仅是 xxx。 PaymentForm.ID 也应该被参数化。
  • Access 使用 -1 表示 TRUE,所以试试 -1
  • @OlivierRogier 这个问题与 SQL 注入无关(即使它恰好包含该漏洞,OP 也没有询问它)。因此,不是重复的。
  • @TheMixy you are right -1 应该可以工作

标签: c# sql database ms-access


【解决方案1】:

Access 使用 -1 表示 TRUE,使用 0 表示 FALSE。所以使用0-1

此外,正如@ADyson 指出的,您应该参数化 SQL 语句中的所有值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-12
    相关资源
    最近更新 更多