第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如果給定的值不為空/空,SQL 如何更新數(shù)據(jù)

如果給定的值不為空/空,SQL 如何更新數(shù)據(jù)

C#
有只小跳蛙 2021-10-23 16:18:20
我有一個用戶表,我希望用戶更新他們的一些詳細信息(數(shù)據(jù)),但是如果用戶決定不插入值并將其發(fā)送為空,我希望數(shù)據(jù)保持相同的值。如果我插入,這對我根本不起作用 -exec UpdateAboutMe '','','',21  To this proc:我無法將代碼復制到此處:“您的帖子似乎包含格式不正確的代碼”我嘗試了半個小時來更改它,但同樣的消息不斷出現(xiàn) - 我上傳了一個屏幕截圖它刪除了用戶數(shù)據(jù)和它的空。我嘗試了很多方法,更不用說一天一夜一百萬了,但都沒有成功。什么是正確的方法?說清楚這與我想要的相反 -    SET @AboutMe= IsNull(@AboutMe, [About_me])因此,如果@AboutMe 發(fā)送為空,[About_me] 將不會被清除/擦除。謝謝。
查看完整描述

3 回答

?
繁花不似錦

TA貢獻1851條經(jīng)驗 獲得超4個贊

如果值被傳遞為 as NULL,那么您可以簡單地執(zhí)行以下操作:

SET AboutMe = COALESCE(@AboutMe, About_me)

如果它們可以是NULL或空白,那么您可以使用顯式CASE

SET AboutMe = (CASE WHEN @AboutMe IS NULL OR LTRIM(@AboutMe) = '' THEN Aboutme ELSE @AboutMe END)



查看完整回答
反對 回復 2021-10-23
?
斯蒂芬大帝

TA貢獻1827條經(jīng)驗 獲得超8個贊

CASE如果變量IS NULL或空字符串或只是空格,您可以使用自身替換值。否則使用變量的值。這是可能的例如通過使用的組合ltrim(),isnull()并為空字符串的比較。


UPDATE [Users_Table]

       SET [User_name] = CASE

                           WHEN ltrim(isnull(@User_name, '')) = '' THEN

                             [User_name]

                           ELSE

                             @User_name

                         END,

           [About_me] = CASE

                          WHEN ltrim(isnull(@AboutMe, '')) = '' THEN

                            [About_me]

                          ELSE

                            @AboutMe

                        END,

           [City] = CASE

                      WHEN ltrim(isnull(@City, '')) = '' THEN

                        [City]

                      ELSE

                        @City

                    END

       WHERE [UserID] = @ID;


查看完整回答
反對 回復 2021-10-23
?
慕斯王

TA貢獻1864條經(jīng)驗 獲得超2個贊

我認為您也想“忽略”,''但問題是這不是NULL.


嘗試這個:


CREATE PROC UpdateMy

  @User_name nvarchar(15),

  @AboutMe nvarchar(150),

  @City nvarchar(21),

  @ID int

AS

BEGIN

  UPDATE Users_Table

  SET

    [User_name] = CASE WHEN ISNULL(@User_name, N'') = N'' THEN [User_name] ELSE @User_name END,

    [About_me] = CASE WHEN ISNULL(@AboutMe, N'') = N'' THEN [About_me] ELSE @AboutMe END,

    [City] = CASE WHEN ISNULL(@City, N'') = N'' THEN [City] ELSE @City END

  WHERE [UserID] = @ID;


  SELECT * FROM Users_Table WHERE [UserID] = @ID;

END

GO


查看完整回答
反對 回復 2021-10-23
  • 3 回答
  • 0 關注
  • 240 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號