C# - 更新需要猜测AUTO_INCREMENT的ID

时间:2014-12-27 11:00:46

标签: c# mysql

好的,所以在我的MySQL数据库中,我有一个名为groups的表。在该表中,有一个名为id的列和一个名为group_id的列。两者都是必需的。通过C#仿真器插入组。我需要知道,如何编辑我的代码以使其与数据库中的id和group_id匹配? id是我的groups表中的AUTO_INCREMENT,是主键。

这是我的C#代码,

queryreactor.setQuery(string.Concat(new object[]
                {
                    "INSERT INTO groups (`name`, `desc`,`badge`,`owner_id`,`created`,`room_id`,`colour1`,`colour2`) VALUES(@name, @desc, @badge, ",
                    Session.GetHabbo().Id,
                    ", UNIX_TIMESTAMP(), ",
                    RoomId,
                    ",'",
                    Colour1,
                    "','",
                    Colour2,
                    "')"
                }));
                queryreactor.addParameter("name", Name);
                queryreactor.addParameter("desc", Desc);
                queryreactor.addParameter("badge", Badge);

任何想法?我知道MySQL不支持2个AUTO_INCREMENT列。但是,我基本上只需要匹配id列和group_id列。

1 个答案:

答案 0 :(得分:0)

我不明白为什么你需要两列才能拥有完全相同的值,因为你总是可以为group_Id和ID使用ID列。

如果你仍然希望拥有这样的列,那么一个简单的解决方案就是 在插入查询后触发更新查询,其中group_id使用新插入的id列进行更新。

类似

update groups
set group_id = id
where group_id is null
groups表上

甚至更好, write a trigger ,以便您的group_id列自动更新为id列的插入语句行