4

我一直在SQL Server 2005數據庫中使用Narayana Vyas Kondreddi的優秀存儲過程sp_generate_insertshttp://vyaskn.tripod.com/code/generate_inserts.txtsp_generate_inserts for SQL Server 2008

但移動到SQL Server 2008,我得到一個地方長期空白的UNIQUEIDENTIFIER值後插入奇怪的結果後:

INSERT INTO [BannerGroups]([Id], [DescriptionText], [Width], [Height]) 
VALUES('BFCD0173-9432-47D1-84DF-8AB3FB40BF76                                                       ', 'Example', 145, NULL) 

任何人都知道如何解決這一問題?

回答

9

看來是本節中,剛剛超過向下一半:

WHEN @Data_Type IN ('uniqueidentifier') 
       THEN 
        'COALESCE('''''''' + REPLACE(CONVERT(char(255),RTRIM(' + @Column_Name + ')),'''''''','''''''''''')+'''''''',''NULL'')' 

看到它的轉換爲CHAR(255),這意味着該值被填充了255個字符。改爲VARCHAR,它應該沒問題,因爲它不會用空格填充值。