sql >> Database teknologi >  >> RDS >> Sqlserver

Fejlhåndtering i brugerdefinerede funktioner

Det ser ud til, at SQL Server UDF'er er en smule begrænset på denne (og mange andre) måde.

Man kan virkelig ikke gøre ret meget ved det – sådan er det (indtil videre) bare. Enten kan du definere din UDF, så du kan signalere en fejltilstand tilbage ved hjælp af dens returværdi (f.eks. returnere NULL i tilfælde af en fejl), eller så må du nærmest ty til at skrive en lagret procedure i stedet for, hvilket kan have meget mere fejlhåndtering og tillader RAISERROR og så videre.

Så enten design din UDF til ikke at kræve specifik signalering af fejltilstande, eller så skal du omstrukturere din tilgang til at bruge lagrede procedurer (som kan have flere OUTPUT-parametre og dermed også kan returnere fejlkode sammen med din datanyttelast, hvis du har brug for det), eller administreret CLR-kode til dine UDF'er.

Beklager, jeg har ikke en bedre idé - for nu er jeg bange for, at det er dine muligheder - vælg selv.

Marc



  1. Ting at vide om databasedrevne websteder

  2. Hvad er det optimale MYSQL-forespørgselsnummer i php-script?

  3. Trin for trin opgraderingsproces til R12.2 Upgrade part -2 (Main Upgrade Driver for R12.2.0)

  4. Forskellige værdier tæller i samme kolonne