【发布时间】:2019-08-27 17:20:00
【问题描述】:
我正在尝试更新 SQL Server 表中的特定列,其中该列所在行的 Id 是当前表中的最高 Id。错误消息说我的查询中“ORDER”附近有语法错误
我已经对是否可以使用 SQL UPDATE 语句后跟 ORDER BY 语句进行了一些研究,以便我更新表中具有最高 Id 的行中的特定列。我发现这是可能的以及语法是什么,但是当我按照我找到的指南并使用语法时仍然会出错。
我链接到按钮事件的连接代码:
SqlConnection newconnection = new SqlConnection(ConfigurationManager.ConnectionStrings["derpection"].ConnectionString);
string sql01 = "UPDATE Messages SET Besked = 'test' ORDER BY Id";
SqlCommand hmm01 = new SqlCommand(sql01, newconnection);
newconnection.Open();
hmm01.ExecuteNonQuery();
newconnection.Close();
我的桌子:
CREATE TABLE [dbo].[Messages]
(
[Id] INT IDENTITY (1, 1) NOT NULL,
[Besked] VARCHAR(50) NULL,
[BrugerID] INT NOT NULL,
[Username] VARCHAR (50) NOT NULL,
PRIMARY KEY CLUSTERED ([Id] ASC),
CONSTRAINT [FK_Users]
FOREIGN KEY ([BrugerID]) REFERENCES [dbo].[Users] ([Id])
);
我希望它更新 ID 最高的行,但结果是一条错误消息。即使语法应该是正确的。
【问题讨论】:
-
您的问题明确指定了 MySQL,但代码与该数据库不兼容。非常混乱。
-
有点好奇你在哪里发现 order by 可以用在 Update 语句上?
-
您好,请仔细检查一下,您是对的 Gordon Linoff。它只是在我在 Visual Studio 中添加它的列表上称为 Sql Server 数据库。所以我很抱歉我的无知。正如您可能知道的那样,我是数据库的初学者。这是史蒂夫的具体链接。 dzone.com/articles/update-row-highest-id-mysql在其他地方找到类似的东西,但现在我找不到页面
标签: c# sql asp.net database sql-update