You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

更新SQL外键值触发UPDATE错误,请求排查解决

更新Reservations表外键id_room时操作失败,请求排查

尝试更新Reservations表中指定id_reservation的id_room字段值为idRoom变量内容时,UPDATE操作执行失败,已通过谷歌搜索未找到有效解决方案,需帮忙排查问题。

执行的C#及SQL代码

data = "UPDATE Reservations SET id_room = @idRoom FROM Reservations WHERE id_reservation = @idReservation";

using (SqlCommand cmd = new SqlCommand(data, con))
{
    cmd.Parameters.AddWithValue("@idRoom", idRoom);
    cmd.Parameters.AddWithValue("@idReservation", idReservationTxtBox.Text);
    cmd.ExecuteNonQuery();
}

关联表结构

Reservations表

CREATE TABLE [dbo].[Reservations] (
    [id_reservation]  INT          IDENTITY (1, 1) NOT NULL,
    [n_card]          VARCHAR (16) NOT NULL,
    [cardholder_name] TEXT         NOT NULL,
    [expiration_date] DATE         NOT NULL,
    [cvc]             VARCHAR (3)  NOT NULL,
    [id_room]         INT          NOT NULL,
    [reserva_price]   FLOAT (53)   NOT NULL,
    [check-in]        DATETIME     NOT NULL,
    [check-out]       DATETIME     NOT NULL,
    CONSTRAINT [PK_Reservas] PRIMARY KEY CLUSTERED ([id_reservation] ASC),
    CONSTRAINT [FK_Reservations_Rooms] FOREIGN KEY ([id_room]) REFERENCES [dbo].[Rooms] ([id_room])
);

Rooms表

CREATE TABLE [dbo].[Rooms] (
    [id_room]   INT  IDENTITY (1, 1) NOT NULL,
    [n_room]    INT  NOT NULL,
    [type_room] TEXT NOT NULL,
    [available] BIT  NOT NULL,
    CONSTRAINT [PK_Rooms] PRIMARY KEY CLUSTERED ([id_room] ASC)
);

补充材料

已提供以下截图:

  • SQL错误信息截图
  • Reservations和Rooms表的结构及数据截图
  • idRoom变量定义截图

内容的提问来源于stack exchange,提问作者bagaco

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 09:25:38