我有一个动态插入过程。实际上我试图用 C# 的一个按钮创建所有程序。无论如何,我创建了那个插入过程,但如果 isActive 为空,它看起来像那样。所以sql server报错。有没有办法替换这个 coma(,) 字符?或者有什么建议?
INSERT INTO category ( mainCatId, catname, isActive, ) VALUES ( @mainCatId, @catname, @isActive, )
看起来是这样的。
declare @mainCatId int = 1, @catname nvarchar (50) = NULL, @isActive bit = NULL
DECLARE @sqlQuery nvarchar(4000);
SET @sqlQuery = 'INSERT INTO category ( ';
IF ( @mainCatId IS NOT NULL )
SET @sqlQuery = @sqlQuery + ' mainCatId, ';
IF ( @isActive IS NOT NULL )
SET @sqlQuery = @sqlQuery + ' isActive, ';
SET @sqlQuery = @sqlQuery + ' )';
SET @sqlQuery = @sqlQuery + ' VALUES ( ';
IF ( @mainCatId IS NOT NULL )
SET @sqlQuery = @sqlQuery + ' @mainCatId, ';
IF ( @catname IS NOT NULL )
SET @sqlQuery = @sqlQuery + ' @catname, ';
IF ( @isActive IS NOT NULL )
SET @sqlQuery = @sqlQuery + ' @isActive, ';
SET @sqlQuery = @sqlQuery + ' )';
SET @sqlQuery = @sqlQuery;