Sql server SSMS编辑单元无法插入行-uuid无效-如何将有效uuid粘贴到编辑前200行的单元中?

Sql server SSMS编辑单元无法插入行-uuid无效-如何将有效uuid粘贴到编辑前200行的单元中?,sql-server,uuid,Sql Server,Uuid,在SSMS中,试图通过编辑前200行来添加一些测试数据。我怎样才能得到一个粘贴到单元格中的标签?我尽量不必写insert语句 已尝试从中获取UUID-尝试了此生成器中的所有格式。查看其他堆栈溢出问题似乎与UUID的编程问题有关,而不是编辑问题。尝试添加带单引号和不带单引号的uuid 错误消息显示: 不能使用“结果”窗格将此字段设置为null以外的值 我认为这意味着不能在网格中提供guid,必须将其保留为空 该列是否具有默认值NewID()?如果是这样,则在提交该行(聚焦另一行)时,它应自行填充

在SSMS中,试图通过编辑前200行来添加一些测试数据。我怎样才能得到一个粘贴到单元格中的标签?我尽量不必写insert语句

已尝试从中获取UUID-尝试了此生成器中的所有格式。查看其他堆栈溢出问题似乎与UUID的编程问题有关,而不是编辑问题。尝试添加带单引号和不带单引号的uuid


错误消息显示:

不能使用“结果”窗格将此字段设置为null以外的值

我认为这意味着不能在网格中提供guid,必须将其保留为空

该列是否具有默认值NewID()?如果是这样,则在提交该行(聚焦另一行)时,它应自行填充

如果不是,请尝试通过编写INSERT语句插入数据:

INSERT INTO table(list,of,columns,except,auto,generated,ones)
VALUES ('list','of','values'...)
或者从其他位置选择/修改它们:

INSERT INTO table(list,of,columns,except,auto,generated,ones)
SELECT mixed,'list','of','values',and,columns
FROM othertable 

错误消息显示:

不能使用“结果”窗格将此字段设置为null以外的值

我认为这意味着不能在网格中提供guid,必须将其保留为空

该列是否具有默认值NewID()?如果是这样,则在提交该行(聚焦另一行)时,它应自行填充

如果不是,请尝试通过编写INSERT语句插入数据:

INSERT INTO table(list,of,columns,except,auto,generated,ones)
VALUES ('list','of','values'...)
或者从其他位置选择/修改它们:

INSERT INTO table(list,of,columns,except,auto,generated,ones)
SELECT mixed,'list','of','values',and,columns
FROM othertable 
不幸的是,该字段被定义为二进制16,而不是null

另外,Enterprise Manager不允许粘贴到二进制字段中

如果使用正确的数据类型
uniqueidentifier
定义列,则粘贴应该可以正常工作

修复方法不是使用INSERT语句(尽管这是目前的一种解决方法),而是使用正确的数据类型

作为一个额外的好处,uniqueidentifier列不允许无效值,而binary将处理您可以塞入其中的任何字节

不幸的是,该字段被定义为二进制16,而不是null

另外,Enterprise Manager不允许粘贴到二进制字段中

如果使用正确的数据类型
uniqueidentifier
定义列,则粘贴应该可以正常工作

修复方法不是使用INSERT语句(尽管这是目前的一种解决方法),而是使用正确的数据类型



另一个好处是,uniqueidentifier列不允许出现无效值,而binary将处理任何可能塞入其中的字节。

。但是,为什么要尝试插入值?通常情况下,表使用默认值,或者由应用程序传递。此外,我将使用
UPDATE
语句更新行的值,而不是SSMS的GUI。@larnu感谢您花时间作出响应。我正在手动插入一个值以对读取表的程序进行单元测试,而插入数据的程序尚未编写。@Larnu您知道SSMS的GUI不允许输入UUID的原因吗?我不能说我曾经尝试过,我没有使用GUI,我的DML使用t-SQL。。但是,为什么要尝试插入值?通常情况下,表使用默认值,或者由应用程序传递。此外,我将使用
UPDATE
语句更新行的值,而不是SSMS的GUI。@larnu感谢您花时间作出响应。我正在手动插入一个值以对读取表的程序进行单元测试,而插入数据的程序尚未编写。@Larnu您知道SSMS的GUI不允许输入UUID的原因吗?我不能说我曾经尝试过,我没有使用GUI,我的DML使用t-SQL。谢谢您的时间和回答,不幸的是,该字段被定义为二进制16,而不是null。对这个问题的答复似乎有一个共识,即我应该写一份插入声明,我现在就这样做。我对SSMS编辑不允许粘贴UUID感到失望。我会暂时不勾选这个答案,以防uuid中有编辑的方法。为什么不为列选择专用的UNIQUEIDENTIFIER类型?我相信我的SSMS 2017可以编辑这些有趣的声音,我将向DBA提及。感谢您的时间和回答,不幸的是,该字段被定义为二进制16,而不是null。对这个问题的答复似乎有一个共识,即我应该写一份插入声明,我现在就这样做。我对SSMS编辑不允许粘贴UUID感到失望。我会暂时不勾选这个答案,以防uuid中有编辑的方法。为什么不为列选择专用的UNIQUEIDENTIFIER类型?我相信我的SSMS 2017可以编辑这些有趣的声音,我会向DBA提及。我想这取决于DBA是否愿意更改数据类型,以及它是否是“修复”;)(只要看看结果也是sqls2005)@CaiusJard看到一个设计决策会让未来几年的事情变得困难,我总是感到很难过。到2025年,人们仍然会抱怨数据库中的二进制UUID,因为在那个时候它不会改变。阿门,现在就把这些东西扼杀在萌芽状态吧@Caius Jard-感谢你们的评论和回答,它现在是不可更改的,因为二进制UUID在整个系统中广泛存在,但是从你们所说的,我认为现在的最佳实践数据库设计是使用uniqueidentifier而不是二进制UUID。我感谢您的反馈情况,我会考虑制作另一个是UUID的列,使用触发器来保持值同步,并逐渐将代码转换为使用UUID,然后删除二进制16i,假设它依赖于DBA改变数据类型的意愿,关于它是否是“修复”;(只要看看结果也是sqls2005)@CaiusJard看到一个设计决策会让未来几年的事情变得困难,我总是感到很难过。到2025年,人们仍将对二进制文件感到不满