在本地数据库的 SQL Management Studio 中,您可以按CTRL+0
将单元格值设置为 null
对于 SQL Azure,这不适用于以下错误消息:
由于没有人对此投票,我觉得还有另一种方法可以将值设置为 null,而我只是在使用一些没人关心的遗留路径。
要清楚:
- 我强烈希望不要每次都编写 SQL 语句,因为有时我会
where
在运行它之前忘记编写子句,从而破坏我的所有数据。 - 我也不喜欢每次必须将某些内容设置为 null 时都编写 CMS。
将单个单元格设置为null的任何解决方法?
对于不相信我的人:
CREATE TABLE [dbo].[NewsSource](
[Id] [int] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](120) NOT NULL,
[Thumbnail] [nvarchar](150) NULL,
[RssFormatId] [int] NULL,
[Active] [bit] NOT NULL,
[Interval] [int] NULL,
[LastStarted] [datetime2](7) NOT NULL,
[LastSuccess] [datetime2](7) NOT NULL,
[TopicId] [int] NULL,
CONSTRAINT [PK_NewsSource] PRIMARY KEY CLUSTERED
至于某些原因,我不被相信。需要明确的是:对我来说,它很容易重现。
- 在SQL Azure上创建具有可为空列的任何表。
- 将列设置为任何值。
- 使用SMSS尝试通过CTRL+0将该列的值设置为null
- 100% 的时间我收到附加的错误消息。
如果这真的很少见,那可能意味着我的 SMSS 以某种方式损坏。
版本号
- Microsoft SQL Azure (RTM) - 12.0.2000.8 2019 年 5 月 2 日 20:11:13 版权所有 (C) 2019 Microsoft Corporation
- SQL Server 管理工作室 15.0.18040.0
- Microsoft 分析服务客户端工具 15.0.900.156
- Microsoft 数据访问组件 (MDAC) 10.0.17763.1
- 微软 MSXML 3.0 6.0
- 微软 Internet Explorer 9.11.17763.0
- 微软 .NET 框架 4.0.30319.42000
- 操作系统 6.3.17763
要显示正常的手动更新语句成功:
UPDATE NewsSource
SET Thumbnail = null
WHERE Id = 17
更新
正如一些人所说,他们没有这个问题。我已尝试从 SQL Management Studio 和 SQL Server重新安装所有元素,但我仍然遇到此问题。