Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 10992|Απάντηση: 1

[Πηγή] Σχετικά με την αποθηκευμένη διαδικασία εκτέλεσης .net Το Null γίνεται αυτόματα προεπιλεγμένη μέθοδος χειρισμού εξαιρέσεων

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 9/11/2015 4: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
Αντιγραφή κώδικα
Αυτή είναι η αρχική μου αποθηκευμένη διαδικασία, όπου πρέπει να υπάρχουν 2 πεδία κενά, είτε το c3confirm και το ssourl είναι κενά, είτε το authconfirm και το authurl είναι κενά,

Έτσι, χρησιμοποίησα το .net για να εκτελέσω την αποθηκευμένη διαδικασία, αλλά ήταν πάντα ανώμαλο και δεν μπορούσα να βρω λύση από το Διαδίκτυο, είδα ότι η δήλωση SQL που τελικά εκτέλεσε το .net ήταν:

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= Να κερδίζεις περισσότερα και να χάνεις λιγότερα»
Τελικά, ο φίλος μου μου είπε ότι η μηδενική τιμή θα έπρεπε να έχει μια προεπιλεγμένη τιμή, οπότε την τροποποίησα στον παρακάτω κώδικα και μετά ήταν φυσιολογικό.

  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
Αντιγραφή κώδικα






Προηγούμενος:Η αποκλειστική ρύθμιση Bootstrap δεν αποθηκεύει δεδομένα στο cache
Επόμενος:Διεύθυνση λήψης του Visual Studio 2015
Δημοσιεύτηκε στις 10/11/2015 2:31:22 μ.μ. |
Υπάρχουν παραδείγματα αποθηκευμένων διαδικασιών, δεν πειράζει, θα ψάξω στο Διαδίκτυο
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com