See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 10992|Vastuse: 1

[Allikas] Teave .net Täitmise salvestatud protseduuri null muutub automaatselt vaikimisi erandite käsitlemise meetodiks

[Kopeeri link]
Postitatud 09.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
Kopeeri kood
See on minu algne salvestatud protseduur, kus peab olema kaks välja tühjad, kas c3confirm ja ssourl on tühjad või authconfirm ja authurl on tühjad,

Nii et kasutasin .net salvestatud protseduuri käivitamiseks, kuid see oli alati ebanormaalne ja ma ei leidnud internetist lahendust, nägin, et SQL-lause, mille .net lõpuks käivitas, oli:

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'Võida rohkem ja kaota vähem'
Lõpuks ütles mu sõber, et nullväärtusele tuleks määrata vaikimisi väärtus, nii et muutsin selle järgmiseks koodiks ja siis oli kõik normaalne.

  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
Kopeeri kood






Eelmine:Bootstrap modaalseade ei salvesta andmeid vahemällu
Järgmine:Visual Studio 2015 allalaadimisaadress
Postitatud 10.11.2015 14:31:22 |
On näiteid salvestatud protseduuridest, see on okei, otsin internetist
Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com