具有返回ID的SQL Server范围标识保存并更新

时间:2017-11-03 19:30:46

标签: sql-server stored-procedures scope-identity

我在保存表单时将照片保存到另一个表格。一切都很好。但更新时更新不起作用,因此错误是"无法从dbnull转换为其他类型"

image

1 个答案:

答案 0 :(得分:0)

我写了几天研究的问题,5分钟后,我想到了一些问题,我的问题得到了解决。有同样问题的朋友可以使用这个理由

Declare @NMID int
    if exists(Select 1 from Musteriler where MID=@MID)
    BEGIN
        Update Musteriler Set MusteriKategori=@MusteriKategori, AdiSoyadi = @AdiSoyadi, TelefonNo=@TelefonNo, Eposta=@Eposta, Memleketi=@Memleketi, Meslegi=@Meslegi, Adres=@Adres, MusteriHakkindaNot=@MusteriHakkindaNot, Maker=@Maker, Updated=GETDATE()  
        where MID=@MID

        Select @NMID=@MID
    END
    ELSE
    BEGIN
        Insert Into Musteriler(MusteriKategori, AdiSoyadi, TelefonNo, Eposta, Memleketi, Meslegi, Adres, MusteriHakkindaNot, Maker, Updated) values (@MusteriKategori, @AdiSoyadi, @TelefonNo, @Eposta, @Memleketi, @Meslegi, @Adres, @MusteriHakkindaNot, @Maker, GETDATE())
        SELECT  @NMID=SCOPE_IDENTITY();
    END
SELECT @NMID
END