Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 10992|Odgovoriti: 1

[Vir] O izvajanju .net Shranjena procedura Null samodejno postane privzeta metoda za ravnanje z izjemami

[Kopiraj povezavo]
Objavljeno na 9. 11. 2015 16:28:20 | | |
  1. ALTER PROCEDURE [dbo].[pUpdateSite]
  2.         @ID BIGINT,
  3.         @SiteName NVARCHAR(50),
  4.         @SiteDesc NVARCHAR(500),
  5.         @UpdateBy BIGINT,
  6.         @C3Confirm BIT,
  7.         @SSOUrl VARCHAR(255),
  8.         @AuthConfirm BIT,
  9.         @AuthUrl VARCHAR(255),
  10.         @Remarks NVARCHAR(500)
  11. AS
  12. BEGIN
  13.         SET NOCOUNT ON;
  14.         DECLARE @Now DATETIME
  15.         SET @Now=GETDATE()
  16.         UPDATE tbSite SET SiteName=@SiteName,SiteDesc=@SiteDesc,UpdateBy=@UpdateBy,UpdateDate=@Now,C3Confirm=@C3Confirm,SSOUrl=@SSOUrl,AuthConfirm=@AuthConfirm,AuthUrl=@AuthUrl,Remarks=@Remarks WHERE ID=@ID
  17. END
Kopiraj kodo
To je moj prvotni shranjeni postopek, kjer morata biti 2 polji prazni, bodisi sta c3confirm in ssourl prazna, ali authconfirm in authurl sta prazna,

Torej, uporabil sem .net za izvedbo shranjene procedure, vendar je bilo vedno nenavadno, in rešitve nisem našel na internetu; videl sem, da je SQL stavek, ki ga je .net končno izvedel, bil:

exec pUpdateSite @ID=20,@SiteName=N'ohoh',@SiteDesc=N'wait',@UpdateBy=1,@C3Confirm=default,@SSOUrl=default,@AuthConfirm=1,@AuthUrl=N'http://www.baidu.com',@Remarks= N'Zmagaj več in manj izgubi'
Na koncu mi je prijatelj povedal, da je treba ničelni vrednosti dodeliti privzeto vrednost, zato sem jo spremenil v naslednjo kodo in potem je bilo normalno.

  1. ALTER PROCEDURE [dbo].[pUpdateSite]
  2.         @ID BIGINT,
  3.         @SiteName NVARCHAR(50),
  4.         @SiteDesc NVARCHAR(500),
  5.         @UpdateBy BIGINT,
  6.         @C3Confirm BIT=NULL,
  7.         @SSOUrl VARCHAR(255)=NULL,
  8.         @AuthConfirm BIT=NULL,
  9.         @AuthUrl VARCHAR(255)=NULL,
  10.         @Remarks NVARCHAR(500)=NULL
  11. AS
  12. BEGIN
  13.         SET NOCOUNT ON;
  14.         DECLARE @Now DATETIME
  15.         SET @Now=GETDATE()
  16.         UPDATE tbSite SET SiteName=@SiteName,SiteDesc=@SiteDesc,UpdateBy=@UpdateBy,UpdateDate=@Now,C3Confirm=@C3Confirm,SSOUrl=@SSOUrl,AuthConfirm=@AuthConfirm,AuthUrl=@AuthUrl,Remarks=@Remarks WHERE ID=@ID
  17. END
Kopiraj kodo






Prejšnji:Modalna nastavitev Bootstrap ne predpomni podatkov
Naslednji:Naslov za prenos Visual Studio 2015
Objavljeno na 10. 11. 2015 14:31:22 |
Obstajajo primeri shranjenih postopkov, v redu je, bom poiskal na internetu
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com