Sql Server – 没有足够的结果空间将uniqueidentifier值转换为char

前端之家收集整理的这篇文章主要介绍了Sql Server – 没有足够的结果空间将uniqueidentifier值转换为char前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在将数据从一个表复制到另一个表时运行SQL查询时出现以下错误,

Msg 8170,Level 16,State 2,Line 2
Insufficient result space to convert
uniqueidentifier value to char.

我的SQL查询是,

INSERT INTO dbo.cust_info (
uid,first_name,last_name
)
SELECT
NEWID(),last_name
FROM dbo.tmp_cust_info

我的创建表脚本是,

CREATE TABLE [dbo].[cust_info](
    [uid] [varchar](32) NOT NULL,[first_name] [varchar](100) NULL,[last_name] [varchar](100) NULL)

CREATE TABLE [dbo].[tmp_cust_info](
    [first_name] [varchar](100) NULL,[last_name] [varchar](100) NULL)

我确信NEWID()存在一些问题,如果我拿出并用一些字符串替换它正在工作.

我感谢任何帮助.提前致谢.

解决方法

一个guid需要36个字符(因为破折号).您只提供32个字符的列.不够,因此错误.
原文链接:https://www.f2er.com/mssql/79326.html

猜你在找的MsSQL相关文章